BR122015024097B1 - aparelho de decodificação de vídeo - Google Patents

aparelho de decodificação de vídeo Download PDF

Info

Publication number
BR122015024097B1
BR122015024097B1 BR122015024097-2A BR122015024097A BR122015024097B1 BR 122015024097 B1 BR122015024097 B1 BR 122015024097B1 BR 122015024097 A BR122015024097 A BR 122015024097A BR 122015024097 B1 BR122015024097 B1 BR 122015024097B1
Authority
BR
Brazil
Prior art keywords
slice segment
unit
coding
video
encoding
Prior art date
Application number
BR122015024097-2A
Other languages
English (en)
Inventor
Thammy Lee
Byeong-Doo CHOI
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 BR122015024097B1 publication Critical patent/BR122015024097B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47JKITCHEN EQUIPMENT; COFFEE MILLS; SPICE MILLS; APPARATUS FOR MAKING BEVERAGES
    • A47J36/00Parts, details or accessories of cooking-vessels
    • A47J36/24Warming devices
    • A47J36/2483Warming devices with electrical heating means
    • AHUMAN NECESSITIES
    • A47FURNITURE; DOMESTIC ARTICLES OR APPLIANCES; COFFEE MILLS; SPICE MILLS; SUCTION CLEANERS IN GENERAL
    • A47JKITCHEN EQUIPMENT; COFFEE MILLS; SPICE MILLS; APPARATUS FOR MAKING BEVERAGES
    • A47J39/00Heat-insulated warming chambers; Cupboards with heating arrangements for warming kitchen utensils
    • A47J39/02Dish-warmers; Devices to keep food hot
    • 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
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • 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/172Methods 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 picture, frame or field
    • 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/174Methods 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 slice, e.g. a line of blocks or a group of blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/65Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience
    • H04N19/68Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using error resilience involving the insertion of resynchronisation markers into the bitstream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05BELECTRIC HEATING; ELECTRIC LIGHT SOURCES NOT OTHERWISE PROVIDED FOR; CIRCUIT ARRANGEMENTS FOR ELECTRIC LIGHT SOURCES, IN GENERAL
    • H05B3/00Ohmic-resistance heating
    • H05B3/20Heating elements having extended surface area substantially in a two-dimensional plane, e.g. plate-heater
    • H05B3/22Heating elements having extended surface area substantially in a two-dimensional plane, e.g. plate-heater non-flexible
    • H05B3/28Heating elements having extended surface area substantially in a two-dimensional plane, e.g. plate-heater non-flexible heating conductor embedded in insulating material
    • H05B3/30Heating elements having extended surface area substantially in a two-dimensional plane, e.g. plate-heater non-flexible heating conductor embedded in insulating material on or between metallic plates
    • HELECTRICITY
    • H05ELECTRIC TECHNIQUES NOT OTHERWISE PROVIDED FOR
    • H05BELECTRIC HEATING; ELECTRIC LIGHT SOURCES NOT OTHERWISE PROVIDED FOR; CIRCUIT ARRANGEMENTS FOR ELECTRIC LIGHT SOURCES, IN GENERAL
    • H05B3/00Ohmic-resistance heating
    • H05B3/68Heating arrangements specially adapted for cooking plates or analogous hot-plates
    • H05B3/686Heat-storage plates

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Food Science & Technology (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Error Detection And Correction (AREA)
  • Apparatus For Radiation Diagnosis (AREA)
  • Image Processing (AREA)

Abstract

APARELHO DE DECODIFICAÇÃO DE VÍDEO. É provida codificação de entropia e decodificação de entropia para codificação e decodificação de vídeo. O método de decodificação de entropia de vídeo inclui: determinar uma sequência binária e um índice binário para uma unidade de codificação máxima que é obtida a partir de um fluxo de bits; determinar um valor de um elemento de sintaxe mediante comparação da sequência binária determinada com as sequências binárias que podem ser atribuídas ao elemento de sintaxe rio índice binário; armazenar variáveis de contexto para a unidade de codificação máxima quando o elemento de sintaxe for um último elemento de sintaxe na unidade de codificação máxima, um segmento de fatia dependente que pode ser incluído em uma imagem na qual a unidade de codificação máxima é incluída, e a unidade de codificação máxima é uma última unidade de codificação máxima em um segmento de fatia; e restaurar os símbolos da unidade de codificação máxima mediante uso do valor determinado do elemento de sintaxe.

Description

ANTECEDENTES 1. Campo
[0001] Métodos e aparelhos consistentes com modalidades exemplares se referem à codificação de entropia e decodificação de entropia para codificação e decodificação de vídeo.
2. Técnica Relacionada
[0002] À medida que hardware para reproduzir e armazenar conteúdo de vídeo de alta resolução ou de alta qualidade tem sido desenvolvido e fornecido, uma necessidade para um codec de vídeo que efetivamente codifique ou decodifique o conteúdo de vídeo de alta resolução ou de alta qualidade tem aumentado. Geralmente, um vídeo é codificado de acordo com um método de codificação limitada com base em um macrobloco que tem um tamanho predeterminado.
[0003] Dados de imagem de um domínio espacial são transferidos para coeficientes de um domínio de frequência mediante uso de transformação de frequência. Um codec de vídeo divide uma imagem em blocos cada um deles tendo um tamanho predeterminado para rapidamente realizar transformação de frequência, realiza transformação DCT em cada um dos blocos, e codifica os coeficientes de frequência em unidades dos blocos. Os coeficientes do domínio de frequência podem ser mais facilmente compactados do que os dados de imagem do domínio espacial. Especificamente, como um valor de pixel de imagem de um domínio espacial é expresso como um erro de predição através de predição inter, ou predição intra de um codec de vídeo, quando a transformação de frequência é realizada no erro de predição, uma grande quantidade de dados pode ser transformada para zero (0) . Um codec de video reduz a quantidade de dados mediante substituição dos dados que são gerados continuamente de forma repetida com os dados tendo um tamanho menor.
[0004] A codificação de entropia é realizada para compactar uma sequência de bits de um simbolo gerado pela codificação de video. Uma codificação de entropia baseada em codificação aritmética recentemente tem sido amplamente usada. Para realizar codificação de entropia com base em codificação aritmética, simbolos são digitados em uma sequência de bits e codificação aritmética baseada em contexto é realizada na sequência de bits.
SUMÁRIO
[0005] Modalidades exemplares proporcionam métodos de codificação e decodificação de entropia utilizando informação de contexto de dados próximos considerando um atributo de um segmento de fatia, para codificação e decodificação de video.
[0006] De acordo com um aspecto de uma modalidade exemplar um método de decodificação de entropia de video inclui: determinar uma sequência binária e um indice binário para uma unidade de codificação máxima que é obtida a partir de uma sequência de bits; determinar um valor de um elemento de sintaxe mediante comparação da sequência binária determinada com sequências binárias que podem ser atribuidas ao elemento de sintaxe no indice binário; quando o elemento de sintaxe for um último elemento de sintaxe na unidade de codificação máxima, um segmento de fatia dependente pode ser incluido em uma imagem na qual a unidade de codificação máxima é incluida, e a unidade de codificação máxima é a última unidade de codificação máxima em um segmento de fatia, armazenando as variáveis de contexto para a unidade de codificação máxima; e restaurando os simbolos da unidade de codificação máxima mediante uso do valor determinado do elemento de sintaxe.
[0007] De acordo com um aspecto de uma modalidade exemplar, um método de decodificação de entropia de video inclui: determinar uma sequência de binária e um indice binário para uma unidade de codificação máxima que é obtida a partir de um fluxo de bits; determinar um valor de um elemento de sintaxe mediante comparação da sequência binária determinada com as sequências binárias que podem ser atribuídas ao elemento de sintaxe no índice binário; armazenar as variáveis de contexto para a unidade de codificação máxima quando o elemento de sintaxe for um último elemento de sintaxe na unidade de codificação máxima, um segmento de fatia dependente pode ser incluída em uma imagem na qual a unidade de codificação máxima é incluída, e a unidade de codificação máxima é uma última unidade de codificação máxima em um segmento de fatia; e restaurar os símbolos da unidade de codificação máxima mediante uso do valor determinado do elemento de sintaxe.
[0008] O armazenamento das variáveis de contexto de acordo com as várias modalidades exemplares pode incluir armazenar as variáveis de contexto para a unidade de codificação máxima quando o segmento de fatia dependente puder ser incluído na imagem, independentemente de se o segmento de fatia é um segmento de fatia independente ou o segmento de fatia dependente.
[0009] O método de decodificação de entropia de vídeo de acordo com várias modalidades exemplares pode incluir ainda o uso das variáveis de contexto, armazenadas para decodificação de entropia de uma variável de contexto de uma primeira unidade de codificação máxima do segmento de fatia dependente, em que o segmento de fatia dependente está entre os segmentos de fatia incluidos na imagem e está localizado próximo ao segmento de fatia.
[00010] O método de decodificação de entropia de video de acordo com várias modalidades exemplares pode incluir ainda: determinar se o segmento de fatia dependente pode ser incluido na imagem com base na primeira informação que é obtida a partir de um conjunto de parâmetros de imagem do fluxo de bits; determinar se a unidade de codificação máxima é a última unidade de codificação máxima no segmento de fatia com base na segunda informação que é obtida a partir dos dados sobre a unidade de codificação máxima, em que os dados sobre a unidade de codificação máxima são incluídos entre os dados correspondendo aos segmentos de fatia do fluxo de bits; e obter a sequência binária a partir dos dados sobre a unidade de codificação máxima.
[00011] O método de decodificação de entropia de vídeo de acordo com várias modalidades exemplares pode incluir ainda: determinar um número de pontos de entrada de subconjuntos que são incluidos no segmento de fatia com base na terceira informação que é obtida a partir de um cabeçalho de segmento de fatia do fluxo de bits; determinar uma posição de cada um dos pontos de entrada mediante uso de um deslocamento de um número indicado pela quarta informação, em que o conjunto é um número que é maior do que o número indicado pela quarta informação por 1, e a quarta informação é obtida a partir do cabeçalho de segmento de fatia do fluxo de bits e indica um deslocamento de acordo com cada ponto de entrada; e em que o número de pontos de entrada nas posições dos pontos de entrada é determinado quando um bloco de pixels adjacentes pode ser incluido em um segmento de fatia que é incluido na imagem ou uma operação de sincronização ser realizada para variáveis de contexto de uma unidade de codificação máxima que é incluida na imagem.
[00012] De acordo com um aspecto de uma modalidade exemplar, um método de codificação de entropia de video inclui: gerar uma coluna de bits de simbolos que são determinados mediante codificação de uma unidade de codificação máxima; determinar uma variável de contexto de acordo com cada indice binário de um valor de elemento de sintaxe correspondendo aos simbolos; determinar uma sequência binária indicando o valor de elemento de sintaxe com base em um valor de contexto de um elemento de sintaxe; e armazenar as variáveis de contexto para a unidade de codificação máxima quando o elemento de sintaxe é um último elemento de sintaxe na unidade de codificação máxima, um segmento de fatia dependente pode ser incluido em uma imagem no qual a unidade de codificação máxima é incluida, e a unidade de codificação máxima é uma última unidade de codificação máxima em um segmento de fatia.
[00013] O armazenamento das variáveis de contexto de acordo com as várias modalidades exemplares pode incluir armazenar as variáveis de contexto para a unidade de codificação máxima quando o segmento de fatia dependente puder ser incluido na imagem, independentemente de se o segmento de fatia é um segmento de fatia independente ou o segmento de fatia dependente.
[00014] De acordo com um aspecto de uma modalidade exemplar, um aparelho de decodificação de entropia de video inclui: um inicializador de contexto que determina uma sequência binária e um indice binário para uma unidade de codificação máxima que é obtida a partir de um fluxo de bits, e determina um valor de um elemento de sintaxe mediante comparação da sequência binária determinada com sequências binárias que podem ser atribuídas ao elemento de sintaxe no índice binário; uma unidade de armazenamento de contexto que armazena as variáveis de contexto para a unidade de codificação máxima quando o elemento de sintaxe é um último elemento de sintaxe na unidade de codificação máxima, um segmento de fatia dependente pode ser incluído em uma imagem na qual a unidade de codificação máxima é incluída, e a unidade de codificação máxima é uma última unidade de codificação máxima em um segmento de fatia; e uma unidade de restauração de símbolo que restaura os símbolos da unidade de codificação máxima mediante uso do valor determinado do elemento de sintaxe.
[00015] De acordo com um aspecto de uma modalidade exemplar, um aparelho de codificação de entropia de vídeo inclui: um meio de binarização que gera uma sequência de bits de símbolos que são determinados mediante realização de codificação em uma unidade de codificação máxima; um determinador de sequência binária que determina um valor de contexto de acordo com cada índice binário de um valor de elemento de sintaxe correspondendo aos símbolos e determina uma sequência binária indicando o valor de elemento de sintaxe com base em uma variável de contexto de um elemento de sintaxe; e uma unidade de armazenamento de contexto que armazena variáveis de contexto para a unidade de codificação máxima quando o elemento de sintaxe for um último elemento de sintaxe na unidade de codificação máxima, um segmento de fatia dependente pode ser incluido em uma imagem na qual a unidade de codificação máxima é incluída, e a unidade de codificação máxima é uma última unidade de codificação máxima em um segmento de fatia.
[00016] De acordo com um aspecto de uma modalidade exemplar, é provido um meio de gravação legível por computador que tem instruções incorporadas em um programa, o qual, quando executado por um computador, realiza o método de decodificação de entropia de vídeo.
[00017] De acordo com um aspecto de uma modalidade exemplar, é provido um meio de gravação legível por computador que tem instruções incorporadas em um programa, o qual, quando executado por um computador, realiza o método de codificação de entropia de vídeo.
[00018] Assim, se um segmento de fatia dependente pode ser usado em uma imagem atual com base na codificação/decodificação de entropia, uma variável de contexto pode ser armazenada após a codificação (decodificação) de entropia de uma última unidade de codificação máxima (LCU) de cada segmento de fatia ser concluída. Consequentemente, embora um segmento de fatia anterior seja um segmento de fatia independente, uma variável inicial da variável de contexto que é necessária para um próximo segmento de fatia dependente pode ser obtida a partir da variável de contexto da última LCU do segmento de fatia independente que é previamente codificado.
[00019] Como a informação indicando um número que é menor por 1 do que um deslocamento de subconjunto é provido através de um segmento de fatia para eficientemente informar sobre um ponto de sincronização de uma variável de contexto para codificação/decodificação de entropia, um tamanho de dados do segmento de fatia pode ser reduzido.
BREVE DESCRIÇÃO DOS DESENHOS
[00020] A Figura IA é um diagrama em blocos ilustrando um aparelho de codificação de entropia de video de acordo com uma ou mais modalidades exemplares.
[00021] A Figura 1B é um fluxograma de um método de codificação de entropia de video de acordo com uma ou mais modalidades exemplares.
[00022] A Figura 2A é um diagrama em blocos ilustrando um aparelho de decodificação de entropia de video de acordo com uma ou mais modalidades exemplares.
[00023] A Figura 2B é um fluxograma de um método de decodificação de entropia de video de acordo com uma ou mais modalidades exemplares.
[00024] A Figura 3 é um diagrama ilustrando blocos de pixels adjacentes e unidades de codificação máxima (LCUs) em uma imagem.
[00025] A Figura 4 é um diagrama ilustrando um segmento de fatia e as LCUs em uma imagem.
[00026] A Figura 5 é um fluxograma de uma operação de análise de codificação aritmética binária adaptativa de contexto (CABAC) de acordo com uma modalidade exemplar.
[00027] A Figura 6A é um diagrama para explicar a decodificação de entropia utilizando uma variável de contexto armazenada.
[00028] A Figura 6B é um fluxograma detalhado de uma operação de armazenamento de uma variável de contexto na operação de análise CABAC de acordo com uma modalidade exemplar.
[00029] A Figura 7 é um diagrama ilustrando uma sintaxe de um cabeçalho de segmento de fatia de acordo com uma modalidade exemplar.
[00030] A Figura 8 é um diagrama de blocos de um aparelho de codificação de video com base em unidades de codificação que têm uma estrutura de árvore de acordo com uma modalidade exemplar.
[00031] A Figura 9 é um diagrama de blocos de um aparelho de decodificação de vídeo com base nas unidades de codificação que têm uma estrutura de árvore de acordo com uma modalidade exemplar.
[00032] A Figura 10 é um diagrama para explicar um conceito de unidades de codificação de acordo com uma modalidade exemplar.
[00033] A Figura 11 é um diagrama de blocos de um codificador de imagem com base em unidades de codificação de acordo com uma modalidade exemplar.
[00034] A Figura 12 é um diagrama de blocos de um decodificador de imagem com base nas unidades de codificação de acordo com uma modalidade exemplar.
[00035] A Figura 13 é um diagrama ilustrando unidades de codificação mais profunda de acordo com as profundidades e partições de acordo com uma modalidade exemplar.
[00036] A Figura 14 é um diagrama para explicar uma relação entre uma unidade de codificação e unidades de transformada de acordo com uma modalidade exemplar.
[00037] A Figura 15 é um diagrama para explicar informação de codificação das unidades de codificação correspondendo a uma profundidade codificada de acordo com uma modalidade exemplar.
[00038] A Figura 16 é um diagrama que ilustra unidades de codificação mais profunda de acordo com as profundidades de acordo com uma modalidade exemplar.
[00039] As Figuras 17 a 19 são diagramas para explicar uma relação entre as unidades de codificação, unidades de predição, e unidades de transformação, de acordo com uma modalidade exemplar.
[00040] A Figura 20 é um diagrama para explicar uma relação entre uma unidade de codificação, uma unidade de predição e uma unidade de transformada de acordo com informação de modo de codificação da Tabela 1.
[00041] A Figura 21 é um diagrama ilustrando uma estrutura física de um disco no qual um programa é armazenado de acordo com uma modalidade exemplar.
[00042] A Figura 22 é um diagrama ilustrando uma unidade de disco para gravar e ler um programa mediante uso do disco.
[00043] A Figura 23 é um diagrama ilustrando uma estrutura global de um sistema de fornecimento de conteúdo para prover um serviço de distribuição de conteúdo.
[00044] As Figuras, 24 e 25, são diagramas ilustrando uma estrutura externa e uma estrutura interna de um telefone móvel ao qual um método de codificação de video e um método de decodificação de video de acordo com modalidades exemplares que são aplicados de acordo com uma modalidade exemplar.
[00045] A Figura 26 é um diagrama ilustrando um sistema de transmissão digital ao qual um sistema de comunicação reaplicado de acordo com a modalidade exemplar.
[00046] A Figura 27 é um diagrama ilustrando 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 exemplar.
DESCRIÇÃO DETALHADA DE MODALIDADES EXEMPLARES
[00047] Um método de codificação de video em um segmento de fatia, e um método de decodificação de video em um segmento de fatia, de acordo com as várias modalidades exemplares, serão explicados com referência às Figuras IA a 7. Um método de codificação de video e um método de decodificação de video com base nas unidades de codificação tendo uma estrutura de árvore de acordo com as várias modalidades exemplares às quais podem ser aplicados o método de codificação de entropia e o método de decodificação de entropia serão explicados com referência às Figuras 8 a 20. Além disso, várias modalidades exemplares as quais o método de codificação de video e o método de decodificação de video podem ser aplicados serão explicadas com referência às Figuras 21 a 27. Em seguida, o termo "imagem" pode se referir a uma imagem estática ou a uma imagem em movimento, isto é, um video.
[00048] A Figura 1A é um diagrama em blocos de um aparelho de codificação de entropia de video 10 de acordo com várias modalidades exemplares.
[00049] O aparelho de codificação de entropia de video 10 de acordo com várias modalidades exemplares inclui um meio de binarização 12, um determinador de sequência binária 14, e uma unidade de armazenamento de contexto 16.
[00050] O aparelho de codificação de entropia de video 10 pode realizar codificação de entropia nos simbolos que são codificados de acordo com unidades de codificação máxima (LCUs). 0 aparelho de codificação de entropia de video 10 pode armazenar um codificador de video (não mostrado) que realiza codificação nas LCUs.
[00051] Um processo usado pelo aparelho de codificação de entropia de video 10 incluindo o codificador de vídeo (não mostrado) para realizar a codificação nas LCUs e gerar símbolos, será explicado agora em detalhe para conveniência de explanação. Contudo, será entendido que o aparelho de codificação de entropia de vídeo 10 não é limitado a uma estrutura incluindo diretamente o codificador de vídeo (não mostrado) e o aparelho de codificação de entropia de vídeo 10 pode receber símbolos que são codificados por um aparelho de codificação, externo.
[00052] Um processo de codificação de vídeo de acordo com uma modalidade exemplar pode ser dividido em um processo de codificação de origem que minimiza os dados redundantes devido à similaridade espacial/temporal dos dados de imagem e um processo de codificação de entropia que minimiza a redundância outra vez em uma sequência de bits de dados que é gerada através do processo de codificação de origem. O aparelho de codificação de entropia de vídeo 10 de acordo com uma modalidade exemplar realiza codificação de origem em cada uma das imagens que constitui um vídeo de acordo com os blocos e gera símbolos codificados. A codificação de origem inclui um processo de realizar predição intra/predição inter, transformação e quantização nos dados de vídeo em um domínio de espaço em unidades de bloco. Como um resultado da codificação de origem, símbolos codificados de acordo com os blocos podem ser gerados. Exemplos dos símbolos codificados podem incluir um coeficiente de transformada quantizado de um componente residual, um vetor de movimento, um atributo de modo intra, um atributo de modo inter, e um parâmetro de quantização.
[00053] A codificação de entropia de acordo com uma modalidade exemplar pode ser dividida em um processo de binarização que transforma os símbolos em uma sequência de bits e um processo de codificação aritmética que realiza codificação aritmética baseada em contexto na sequência de bits. Codificação aritmética binária adaptativa de contexto (CABAC) é amplamente usada como um método de codificação que realiza codificação aritmética baseada em contexto. De acordo com a codificação/decodificação aritmética baseada em contexto, cada bit de uma sequência de bits de símbolo pode ser cada binário, e cada posição de binário pode ser mapeada para um índice binário. Um comprimento de uma sequência de bits, isto é, um comprimento de binários, pode variar de acordo com um valor de símbolo. Para codificação/decodificação aritmética baseada em contexto, a modelagem de contexto que determina um contexto de um símbolo é necessária.
[00054] Para modelagem de contexto, um contexto precisa ser recentemente atualizado para cada posição de bit de uma sequência de bits de símbolo, isto é, para cada índice binário. 0 termo "modelagem de contexto" se refere a um processo de analisar uma probabilidade de que cada binário seja 0 ou 1. Um processo de atualizar um contexto mediante reflexão de um resultado obtido mediante análise de uma probabilidade de cada um dos símbolos de um novo bloco de acordo com os bits em um contexto atual pode ser realizado repetidamente em unidades de blocos. Uma tabela de probabilidade na qual uma probabilidade é equiparada a cada binário pode ser provida como informação contendo um resultado de tal modelagem de contexto. A informação de probabilidade de codificação de entropia de acordo com uma modalidade exemplar pode ser informação que contém um resultado da modelagem de contexto.
[00055] Consequentemente, quando a informação de modelagem de contexto que é informação de probabilidade de codificação de entropia, é obtida, a codificação de entropia pode ser realizada mediante atribuição de um código a cada um dos bits de uma sequência de bits, binarizada de simbolos de blocos com base em um contexto da informação de probabilidade de codificação de entropia.
[00056] Como a codificação de entropia envolve codificação/decodificação aritmética baseada em contexto, informação de contexto de código de símbolo pode ser atualizada em unidades de blocos, e como a codificação de entropia é realizada mediante uso da informação de contexto de código de símbolo atualizado, uma proporção de compactação pode ser aumentada.
[00057] Um método de codificação de vídeo de acordo com as várias modalidades exemplares não deve ser considerado como limitado apenas a um método de codificação de vídeo realizado em um "bloco" que é uma unidade de dados, e pode ser aplicado a várias unidades de dados.
[00058] Para eficiência de codificação de imagem, uma imagem é dividida em blocos cada bloco tendo um tamanho predeterminado e então é codificada. 0 bloco pode ter um formato quadrado ou retangular perfeito ou um formato geométrico arbitrário. A presente modalidade exemplar não é limitada a uma unidade de dados que tenha um tamanho predeterminado. 0 bloco de acordo com uma modalidade exemplar pode ser um LCU, uma unidade de codificação, uma unidade de predição ou uma unidade de transformada, a partir de unidades de codificação que tem uma estrutura de árvore. Um método de codificação/decodificação de video com base nas unidades de codificação de acordo com a estrutura de video será explicado abaixo com referência às Figuras 8 a 20.
[00059] Blocos de uma imagem são codificados em uma direção de varredura por rastreio.
[00060] O aparelho de codificação de entropia de video 10 pode dividir uma imagem em um ou mais blocos de pixels adjacentes, e cada um dos blocos de pixels adjacentes pode incluir blocos que são dispostos em uma direção de rastreio a partir dos blocos da imagem. A imagem pode ser dividida em blocos de pixels adjacentes que são divididos em uma ou mais colunas, blocos de pixels adjacentes que são divididos em uma ou mais fileiras, ou blocos de pixels adjacentes que são divididos em uma ou mais colunas e uma ou mais fileiras. Cada um dos blocos de pixels adjacentes pode dividir um dominio espacial em subdominios. Para codificar individualmente cada um dos subdominios, o aparelho de codificação de entropia de video 10 pode realizar individualmente a codificação em unidades de blocos de pixels adjacentes.
[00061] Como cada segmento de fatia inclui blocos que são arranjados na direção de rastreio, o aparelho de codificação de entropia de video 10 pode gerar um segmento de fatia mediante divisão de uma imagem em uma direção horizontal. A imagem pode ser dividida em um ou mais segmentos de fatia. Dados de cada segmento de fatia podem ser transmitidos através de uma unidade de camada de adaptação de rede (NAL).
[00062] O aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar pode realizar a codificação em segmentos de fatia. 0 aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar pode gerar símbolos codificados de acordo com os blocos mediante realização seqüencialmente da codificação nos blocos que são incluídos em cada um dos segmentos de fatia. Os dados codificados de blocos em cada segmento de fatia podem ser incluídos em, e podem ser transmitidos através de uma unidade de NAL. Cada bloco de pixels adjacentes pode incluir pelo menos um segmento de fatia. Se necessário, cada segmento de fatia pode incluir pelo menos um bloco de pixels adjacentes.
[00063] Um segmento de fatia pode ser classificado em um segmento de fatia dependente e um segmento de fatia independente.
[00064] Se um segmento de fatia atual for um segmento de fatia dependente, pode ser realizada predição em imagem que se refere aos símbolos codificados de um segmento de fatia anterior que é codificado mais cedo do que o segmento de fatia atual. Quando um segmento de fatia atual é um segmento de fatia dependente, pode ser realizada a codificação de entropia dependente, a qual se refere à informação de entropia de um segmento de fatia anterior que é codificado mais cedo do que o segmento de fatia atual.
[00065] Se um segmento de fatia atual for um segmento de fatia independente, predição em imagem que se refere a um segmento de fatia anterior não é realizada e não é mencionada informação de entropia do segmento de fatia anterior.
[00066] Uma imagem de acordo com uma modalidade exemplar pode incluir um segmento de fatia independente e pelo menos um segmento dependente que são subsequentes a um segmento de fatia independente em uma ordem de varredura por rastreio. Um segmento de fatia independente pode ser uma fatia.
[00067] O aparelho de codificação de entropia de vídeo 10 de acordo com uma modalidade exemplar pode realizar individualmente a codificação em cada bloco de pixels adjacentes, à parte de outros blocos de pixels adjacentes. 0 aparelho de codificação de entropia de video 10 pode codificar sequencialmente as LCUs que são incluidas em um bloco de pixels adjacentes atual, de acordo com os blocos de pixels adjacentes.
[00068] O aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar pode codificar as LCUs de um segmento de fatia atual de acordo com os segmentos de fatia. As LCUs que são incluidas em um bloco de pixels adjacentes predeterminados dentre as LCUs que são incluidas no segmento de fatia atual podem ser codificadas em uma ordem de codificação de um bloco de pixels adjacentes atual.
[00069] Se todas as LCUs de um segmento de fatia atual pertencem a um bloco de pixels adjacentes, atual, o aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar pode codificar a pluralidade das LCUs que são incluidas no segmento de fatia atual em uma ordem de varredura por rastreio no bloco de pixels adjacentes, atual. Nesse caso, como o segmento de fatia atual não está localizado através de uma borda do bloco de pixels adjacente, atual, as LCUs do segmento de fatia atual não cruzam a borda do bloco de pixels adjacentes, atual.
[00070] Mesmo quando um segmento de fatia atual inclui pelo menos um bloco de pixels adjacentes, o aparelho de codificação de entropia de video 10 pode realizar a codificação, em uma ordem de varredura por rastreio das LCUs de um bloco de pixels adjacentes, atual, nas LCUs que pertencem ao bloco de pixels adjacentes, atual dentre as LCUs que são incluidas no segmento de fatia atual. 0 aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar pode realizar seqüencialmente a codificação nos segmentos de fatia. Consequentemente, o aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar pode gerar simbolos codificados de acordo com os blocos mediante realização sequencial de codificação nos segmentos de fatia e realizando seqüencialmente a codificação nos blocos que são incluidos em cada um dos segmentos de fatia. O aparelho de codificação de entropia de video 10 pode realizar predição intra, predição inter, transformação, filtragem em laço, compensação de deslocamento adaptativo de amostra (SAO), e quantização em unidades de blocos de cada segmento de fatia.
[00071] Para realizar codificação de predição nos simbolos codificados que são gerados durante um processo de codificação de origem, por exemplo, uma amostra intra, um vetor de movimento e informação de modo de codificação, predição em imagem pode ser realizada. Quando predição em imagem é realizada, um valor de diferença entre um símbolo codificado atual e um símbolo codificado anterior, em vez do símbolo codificado atual, pode ser codificado. Um valor de diferença entre uma amostra atual e uma amostra adjacente, em vez da amostra atual, pode ser codificado.
[00072] Para realizar codificação de predição em informação de contexto de entropia ou informação de contexto de código que é gerada durante um processo de codificação de entropia, codificação de entropia dependente pode ser realizada. Quando codificação de entropia dependente é realizada e informação de entropia atual e informação de entropia anterior são idênticas, a codificação da informação de entropia atual pode ser omitida.
[00073] Contudo, como o aparelho de codificação de entropia de video 10 codifica individualmente cada bloco de pixels adjacentes, predição em imagem ou codificação de entropia dependente pode não ser realizada entre as LCUs que pertencem a diferentes blocos de pixels adjacentes.
[00074] O aparelho de codificação de entropia de vídeo 10 pode gravar informação indicando a disponibilidade de um segmento de fatia ou um atributo do segmento de fatia em cabeçalhos de várias unidades de codificação tal como um conjunto de parâmetros de sequência (SPS), um conjunto de parâmetros de imagem (PPS), e um cabeçalho de segmento de fatia.
[00075] Por exemplo, o aparelho de codificação de entropia de vídeo 10 pode gerar um cabeçalho de segmento de fatia incluindo informação indicando se um segmento de fatia atual é um segmento de fatia inicial em uma imagem atual.
[00076] Informação básica diversa sobre uma imagem atual a qual pertence um segmento de fatia atual pode ser contida e pode ser transmitida através de um PPS. Especificamente, o PPS pode incluir informação sobre se a imagem atual pode incluir um segmento de fatia dependente. Consequentemente, quando informação indicando que o segmento de fatia dependente é usado na imagem atual está contida no PPS, o aparelho de modificação de entropia de video 10 pode incluir, em um cabeçalho de segmento de fatia atual, informação indicando se o segmento de fatia atual é o segmento de fatia dependente utilizando informação de cabeçalho de fatia de um segmento de fatia anterior.
[00077] Em comparação, quando informação indicando que um segmento de fatia dependente não é usado em uma imagem atual é incluida em um PPS da imagem atual, informação indicando se o segmento de fatia atual é o segmento de fatia dependente não é incluido em um cabeçalho de segmento de fatia atual.
[00078] Quando um segmento de fatia atual não é um segmento de fatia inicial, o aparelho de codificação de entropia de video 10 pode adicionar informação indicando se o segmento de fatia atual é um segmento de fatia dependente a um cabeçalho de segmento de fatia.
[00079] Isto é, quando informação indicando que um segmento de fatia dependente é usado em uma imagem atual é incluida em um PPS da imagem atual e informação indicando que um segmento de fatia atual não é um segmento de fatia inicial é incluido em um cabeçalho de segmento de fatia atual, informação indicando se o segmento de fatia atual é o segmento de fatia dependente pode se adicionada ao cabeçalho de segmento de fatia atual. 0 segmento de fatia inicial de acordo com uma modalidade exemplar tem que ser um segmento de fatia independente. Consequentemente, quando o segmento de fatia atual é o segmento de fatia inicial, informação indicando se o segmento de fatia atual é o segmento de fatia dependente pode ser omitido. Consequentemente, o aparelho de codificação de entropia de video 10 pode adicionar informação indicando se o segmento de fatia atual é o segmento de fatia inicial ao cabeçalho de segmento de fatia para o segmento de fatia inicial e então pode adicionar informação básica sobre o segmento de fatia atual ao cabeçalho de segmento de fatia, e pode transmitir informação resultante.
[00080] Consequentemente, quando um segmento de fatia dependente pode ser usado em uma imagem atual e um segmento de fatia atual não é um segmento de fatia inicial, informação indicando se o segmento de fatia atual é o segmento de fatia dependente pode ser adicionada adicionalmente a um cabeçalho de segmento de fatia atual.
[00081] Contudo, quando um segmento de fatia atual é um segmento de fatia dependente, não um segmento de fatia inicial, informação básica sobre um segmento de fatia pode ser a mesma que informação de um cabeçalho de segmento de fatia anterior. Consequentemente, um cabeçalho de segmento de fatia atual pode ser transmitido enquanto incluindo informação indicando se o segmento de fatia atual é o segmento de fatia inicial e informação indicando se o segmento de fatia atual é o segmento de fatia dependente, mas omitindo informação que é a mesma que a informação do cabeçalho de segmento de fatia anterior.
[00082] Quando um segmento de fatia atual de acordo com uma modalidade exemplar não é um segmento de fatia dependente, um cabeçalho de segmento de fatia atual pode incluir informação indicando se o segmento de fatia atual é o segmento de fatia dependente e pode incluir ainda informação de cabeçalho de diversa para o segmento de fatia atual.
[00083] O aparelho de codificação de entropia de video 10 pode conter, em um cabeçalho de segmento de fatia, um parâmetro de quantização e informação de contexto inicial de um contexto para codificação de entropia e pode transmitir a informação resultante.
[00084] Contudo, quando um segmento de fatia atual é um segmento de fatia dependente, o aparelho de codificação de entropia de video 10 pode realizar predição em imagem que se refere aos simbolos codificados de um segmento de fatia anterior que é codificado mais cedo do que o segmento de fatia atual. Quando um segmento de fatia atual é um segmento de fatia dependente, o aparelho de codificação de entropia de video 10 pode realizar codificação de entropia dependente que se refere à informação de entropia de um segmento de fatia anterior que é codificado mais cedo do que o segmento de fatia atual.
[00085] Consequentemente, quando um segmento de fatia atual é um segmento de fatia dependente, o aparelho de codificação de entropia de video 10 não contém um parâmetro de quantização e informação de contexto inicial em um cabeçalho de segmento de fatia no segmento de fatia atual. Isso porque um parâmetro de quantização e informação de contexto inicial do segmento de fatia dependente pode ser inicializado para um parâmetro de quantização e informação de contexto inicial que são contidos na informação de cabeçalho de um segmento de fatia independente que é previamente codificado.
[00086] Quando um segmento de fatia atual é um segmento de fatia independente, como predição em imagem não é realizada, o aparelho de codificação de entropia de video 10 pode produzir uma sequência de bits de simbolos codificados do segmento de fatia atual, independentemente de um segmento de fatia anterior. Quando um segmento de fatia atual é um segmento de fatia independente, o aparelho de codificação de entropia de video 10 pode produzir informação de entropia do segmento de fatia atual, independentemente da informação de entropia de um segmento de fatia adjacente que foi codificado previamente. Por exemplo, quando um segmento de fatia atual é um segmento de fatia independente, um parâmetro de quantização e informação de contexto inicial tem que ser contidos em um cabeçalho de segmento de fatia atual.
[00087] O aparelho de codificação de entropia de vídeo 10 pode transmitir um cabeçalho de segmento de fatia e símbolos de um segmento de fatia, de acordo com os segmentos de fatia.
[00088] Uma operação para codificação de entropia de vídeo realizada por cada um dos elementos do aparelho de codificação de entropia de vídeo 10 será explicado agora em detalhe com referência à Figura 1B.
[00089] A Figura 1B é um fluxograma de um método de codificação de entropia de vídeo de acordo com várias modalidades exemplares.
[00090] O aparelho de codificação de entropia de vídeo 10 pode dividir uma imagem em pelo menos um segmento de fatia, pode realizar a codificação em cada segmento de fatia, e pode seqüencialmente realizar a codificação nas LCUs que são incluídas em cada segmento de fatia.
[00091] Na operação 11, o meio de binarização 12 pode realizar a binarização nos símbolos que são determinados mediante realização de codificação em uma LCU para gerar uma sequência de bits dos símbolos.
[00092] Na operação 13, o determinador de sequência binária 14 pode determinar uma variável de contexto de acordo com cada índice binário de um valor de elemento de sintaxe correspondendo aos símbolos da LCU. Uma variável de contexto para uma LCU atual pode ser determinada com base em uma variável de contexto de acordo com cada índice binário de um valor de elemento de sintaxe que é usado em outra LCU que é previamente codificada.
[00093] Cada variável de contexto pode incluir uma tabela de contexto e um índice de contexto. Uma variável de contexto pode ser determinada de acordo com um elemento de sintaxe.
[00094] Na operação 15, o determinador de sequência binária pode determinar uma sequência binária indicando o valor de elemento de sintaxe com base na variável de contexto determinada de um elemento de sintaxe. O aparelho de codificação de entropia de video 10 pode armazenar os dados sobre uma tabela de contexto contendo uma correlação entre a sequência binária e uma variável de contexto para cada elemento de sintaxe.
[00095] O determinador de sequência binária 14 pode adotar uma sequência binária indicada pela variável de contexto que é determinada na operação 13, na tabela de contexto para um valor de elemento de sintaxe atual.
[00096] O aparelho de codificação de entropia de video 10 pode gerar uma sequência binária para todos os elementos de sintaxe para a LCU, e então pode determinar se armazena as variáveis de contexto que são determinadas de acordo com a LCU.
[00097] Na operação 17, quando o elemento de sintaxe é um último elemento de sintaxe na LCU, um segmento de fatia dependente pode ser incluido em uma imagem na qual a LCU é incluida, e a LCU é uma última LCU em um segmento de fatia, a unidade de armazenamento de contexto 16 pode armazenar variáveis de contexto para a LCU.
[00098] Independentemente de se o segmento de fatia é um segmento de fatia independente ou um segmento de fatia dependente, quando um segmento de fatia dependente pode ser incluido na imagem, a unidade de armazenamento de contexto 16 pode armazenar as variáveis de contexto para a LCU.
[00099] Quando vários segmentos de fatia são incluidos na imagem, para codificação de entropia de uma variável de contexto de uma primeira LCU de um segmento de fatia dependente que está localizado próximo a um segmento de fatia atual, variáveis de contexto que são armazenadas no segmento de fatia atual podem ser usadas.
[000100] O aparelho de codificação de entropia de video 10 pode gerar um PPS contendo um segmento de fatia que é incluida em uma imagem, uma LCU, e informação diversa que é comumente necessária para decodificar a LCU. O aparelho de codificação de entropia de video 10 pode incluir, no PPS, primeira informação indicando se um segmento de fatia dependente pode ser incluido na imagem.
[000101] O aparelho de codificação de entropia de video 10 pode gerar dados de segmento de fatia incluindo dados que são gerados pela codificação das LCUs que são incluidas em cada segmento de fatia. O aparelho de codificação de entropia de video 10 pode incluir nos dados sobre uma LCU dentre os dados de acordo com os segmentos de fatia, segunda informação indicando se a LCU é uma última LCU no segmento de fatia. Uma sequência binária que é gerada pela codificação de entropia pode ser incluida nos dados sobre a LCU.
[000102] O aparelho de codificação de entropia de video 10 pode gerar um cabeçalho de segmento de fatia incluindo uma LCU que é incluida em um segmento de fatia e informação diversa que é comumente necessária para decodificar as LCUs. O aparelho de codificação de entropia de video 10 pode gerar um fluxo de bits incluindo um PPS, um cabeçalho de segmento de fatia, e dados de acordo com os segmentos de fatia, como um resultado da codificação realizada nos segmentos de fatia.
[000103] Quando um bloco de pixels adjacentes pode ser incluido em um segmento de fatia que é incluido em uma imagem ou uma operação de sincronização pode ser realizada para variáveis de contexto de uma LCU que é incluida na imagem, o aparelho de codificação de entropia de video 10 pode incluir, em um cabeçalho de segmento de fatia, terceira informação indicando um número de pontos de entrada de subconjuntos que são incluídos no segmento de fatia e quarta informação indicando um número que é menor por 1 do que um deslocamento de acordo com cada ponto de entrada.
[000104] O termo "subconjunto que é incluido em um segmento de fatia" se refere a um grupo de LCUs que é seqüencialmente codificado em uma ordem de varredura, a partir das LCUs que são incluídas no segmento de fatia. O processamento dos subconjuntos pode ser realizado simultaneamente.
[000105] Um primeiro byte de um subconjunto atual pode ser determinado mediante soma de deslocamentos de subconjunto a partir de um subconjunto anterior para o subconjunto atual mediante uso da quarta informação que é atribuída a cada subconjunto. Quando existir dois ou mais subconjuntos, como um deslocamento de subconjunto tem que ser maior do que 0, a quarta informação indicando o deslocamento de subconjunto pode ser obtida mediante subtração de 1 a partir do deslocamento de subconjunto. Consequentemente, um deslocamento de subconjunto real pode ser um valor que é maior por 1 do que um número indicado pela quarta informação.
[000106] Um índice de bytes que constitui cada subconjunto começa com 0 e um índice de byte indicando um primeiro byte é 0. Consequentemente, um último byte de um subconjunto atual pode ser determinado mediante soma de um primeiro byte do subconjunto atual com um número indicado pela quarta informação que é atribuída ao subconjunto atual.
[000107] O aparelho de codificação de entropia de vídeo 10 de acordo com uma modalidade exemplar pode incluir um processador central (não mostrado) que geralmente controla o meio de binarização 12, o determinador de sequência binária 14, e a unidade de armazenamento de contexto 16. Alternativamente, cada um dentre o meio de binarização 12, o determinador de sequência binária 14, e a unidade de armazenamento de contexto 16 pode operar devido a seu próprio processador (não mostrado), e o aparelho de codificação de entropia de vídeo 10 pode geralmente operar conforme os processadores (não mostrados) organicamente operam. Alternativamente, o aparelho de codificação de entropia de vídeo 10 pode operar de acordo com o controle de um processador externo (não mostrado) do aparelho de codificação de entropia de vídeo 10 de acordo com uma modalidade exemplar.
[000108] O aparelho de codificação de entropia de vídeo 10 de acordo com uma modalidade exemplar pode incluir uma ou mais unidades de armazenamento de dados (não mostradas) nas quais os dados de entrada/saída do meio de binarização 12, o determinador de sequência binária 14, e a unidade de armazenamento de contexto 16 são armazenados. O aparelho de codificação de entropia de vídeo 10 pode incluir um controlador de memória (não mostrado) que controla a entrada/saída de dados das unidades de armazenamento de dados (não mostradas).
[000109] A Figura 2A é um diagrama em blocos de um aparelho de decodificação de entropia de vídeo 20 de acordo com várias modalidades exemplares.
[000110] O aparelho de decodificação de entropia de vídeo 20 de acordo com uma modalidade exemplar inclui um inicializador de contexto 22, uma unidade de restauração de simbolo 24 (por exemplo, um restaurador de simbolo, etc.) e uma unidade de armazenamento de contexto 26 (por exemplo, meio de armazenamento de contexto).
[000111] O aparelho de decodificação de entropia de video 20 de acordo com uma modalidade exemplar pode receber um fluxo de bits que é gerado como um resultado após uma imagem ser dividida em dois ou mais blocos de pixels adjacentes e pelo menos um segmento de fatia e então é codificado. O fluxo de bits pode ser de dados que são gerados de acordo com os segmentos de fatia e pode ser de dados que são gerados de acordo com os blocos de pixels adjacentes.
[000112] A seguir, o aparelho de decodificação de entropia de video 20 pode analisar um cabeçalho de segmento de fatia de acordo com um atributo de um segmento de fatia. O aparelho de decodificação de entropia de video 20 pode analisar informação indicando se um segmento de fatia atual é um segmento de fatia inicial em uma imagem atual, a partir do cabeçalho de segmento de fatia do segmento de fatia atual.
[000113] Quando for determinado a partir da informação analisada que o segmento de fatia atual não é o segmento de fatia inicial, o aparelho de decodificação de entropia de video 20 pode adicionalmente analisar informação indicando se o segmento de fatia atual é um segmento de fatia dependente que utiliza informação de cabeçalho de fatia de um segmento de fatia anterior, a partir de um cabeçalho de segmento de fatia atual.
[000114] Contudo, informação sobre se a imagem atual pode incluir o segmento de fatia dependente pode ser analisado a partir de um PPS para a imagem atual a qual pertence o - segmento de fatia atual. Consequentemente, quando informação indicando que o segmento de fatia dependente usado na imagem atual é analisado a partir do PPS da imagem atual, o aparelho de decodificação de entropia de video 20 pode analisar a informação indicando se o segmento de fatia atual é o segmento de fatia dependente, a partir do cabeçalho de segmento de fatia atual.
[000115] Em comparação, quando informação indicando que o segmento de fatia dependente não é usado na imagem atual analisada a partir do PPS da imagem atual, informação indicando se o segmento de fatia atual é o segmento de fatia dependente não é analisada a partir do cabeçalho de segmento de fatia atual.
[000116] Consequentemente, quando informação indicando que o segmento de fatia dependente usado na imagem atual é analisado a partir do PPS da imagem atual e informação indicando que o segmento de fatia atual não é o segmento de fatia inicial é analisada, o aparelho de decodificação de video de entropia 20 pode adicionalmente analisar a informação indicando se o segmento de fatia atual é o segmento de fatia dependente, a partir do cabeçalho de segmento de fatia atual. Isto é, quando for determinado que a imagem atual utilize o segmento de fatia dependente e o segmento de fatia dependente atual não é o segmento de fatia inicial, o aparelho de decodificação de ' entropia de video 20 pode adicionalmente analisar informação indicando se o segmento de fatia atual é o segmento de fatia dependente a partir do cabeçalho de segmento de fatia atual.
[000117] Quando for determinado a partir da informação analisada que o segmento de fatia atual é o segmento de fatia inicial, o aparelho de decodificação de entropia de video 20 não analisa a informação indicando se o segmento de fatia atual é o segmento de fatia dependente a partir do cabeçalho de segmento de fatia atual. Como o segmento de fatia inicial pode não ser o segmento de fatia dependente, pode ser determinado que o segmento de fatia inicial seja um segmento de fatia independente sem a informação analisada. Consequentemente, quando o segmento de fatia atual é o segmento de fatia inicial, o aparelho de decodificação de entropia de video 20 pode adicionalmente analisar informação indicando se o segmento de fatia atual é o segmento de fatia inicial e informação básica sobre o segmento de fatia atual a partir de um cabeçalho de segmento de fatia inicial da imagem.
[000118] Quando for determinado a partir da informação analisada a partir do cabeçalho de segmento de fatia atual que o segmento de fatia atual é o segmento de fatia dependente, o aparelho de decodificação de entropia de video 20 pode determinar alguma informação de cabeçalho que é analisada a partir de um cabeçalho de um segmento de fatia anterior, como informação básica do segmento de fatia atual.
[000119] Quando for determinado a partir da informação analisada a partir do cabeçalho de segmento de fatia atual que o segmento de fatia atual não é o segmento de fatia dependente, o aparelho de decodificação de entropia de video 20 pode analisar informação de cabeçalho diversa para o segmento de fatia atual a partir do cabeçalho de segmento de fatia atual.
[000120] O aparelho de decodificação de entropia de video 20 pode decodificar o segmento de fatia atual mediante uso da informação analisada a partir do cabeçalho de segmento de fatia atual e símbolos do segmento de fatia atual.
[000121] Quando cada segmento de fatia é recebido através de uma unidade NAL, o aparelho de decodificação de entropia de vídeo 20 pode receber dados codificados de blocos de acordo com os segmentos de fatia. Cada bloco de pixels adjacentes inclui pelo menos um segmento de fatia. Se necessário, um segmento de fatia pode incluir ao menos um bloco de pixels adjacentes. Uma relação entre um segmento de fatia e um bloco de pixels adjacentes é a mesma que aquela descrita com referência às Figuras IA e 1B.
[000122] O aparelho de decodificação de entropia de vídeo 20 incluindo o segmento de fatia atual restaurado pode restaurar pelo menos um segmento de fatia que é incluído em cada bloco de pixels adjacentes e pode restaurar a imagem mediante combinação dos blocos de pixels adjacentes restaurados.
[000123] O aparelho de decodificação de entropia de vídeo 20 pode analisar, em uma ordem de varredura por rastreio, símbolos de uma pluralidade de blocos que são incluídos no segmento de fatia atual, de acordo com pelo menos um segmento de fatia que é incluído em um bloco de pixels adjacentes, atual, de acordo com os blocos de pixels adjacentes. Adicionalmente, o aparelho de decodificação de entropia de vídeo 20 pode decodificar, na ordem de varredura por rastreio, blocos mediante uso de símbolos que são analisados na ordem de varredura por rastreio dos blocos.
[000124] O aparelho de decodificação de entropia de vídeo 20 pode analisar os símbolos codificados de acordo com as LCUs mediante realização de decodificação de entropia em um fluxo de bits de cada segmento de fatia. O aparelho de decodificação de entropia de video 20 pode analisar os símbolos codificados de acordo com as LCUs mediante realização sequencial de decodif icação de entropia nas LCUs que são incluídas em um segmento de fatia. Um processo usado pelo aparelho de decodificação de entropia de video 20 para realizar a restauração mediante análise de simbolos codificados de acordo com as unidades de codificação que são incluídas em um segmento de fatia será explicado agora em detalhe com referência à Figura 2B.
[000125] A Figura 2B é um fluxograma de um método de decodificação de entropia de vídeo de acordo com várias modalidades exemplares.
[000126] Na operação 21, o inicializador de contexto 22 pode determinar uma sequência binária e um índice binário para uma LCU que é obtida a partir de um fluxo de bits.
[000127] O inicializador de contexto 22 pode armazenar uma tabela de inicialização para um valor de inicialização de acordo com cada índice de contexto para cada elemento de sintaxe. De acordo com uma operação de inicialização de uma variável de contexto, um índice de contexto de um elemento de sintaxe atual pode ser determinado para ser um valor de inicialização com base na tabela de inicialização.
[000128] O inicializador de contexto 22 pode armazenar dados sobre a tabela de contexto contendo uma correlação entre uma sequência binária e uma variável de contexto para cada elemento de sintaxe.
[000129] O inicializador de contexto 22 pode determinar a variável de contexto para cada elemento de sintaxe. As variáveis de contexto de uma LCU atual podem ser sincronizadas mediante uso de variáveis de contexto de uma LCU próxima.
[000130] Na operação 23, o inicializador de contexto 22 pode determinar um valor de um elemento de sintaxe indicado por uma sequência binária atual mediante comparação das sequências binárias que podem ser atribuídas ao elemento d sintaxe em uma variável de contexto atual com base na tabela de contexto com a sequência binária no indice binário que é determinado na operação 21.
[000131] Cada variável de contexto pode ser atualizada com base em um contexto que é recentemente acumulado, a partir de uma variável de contexto inicial quando inicia a decodificação de entropia de uma LCU, durante a decodificação de entropia realizada nas sequências binárias para a LCU.
[000132] O inicializador de contexto 22 pode determinar se um segmento de fatia dependente pode ser incluída em uma imagem com base em uma primeira informação que é obtida a partir de um PPS do fluxo de bits. O inicializador de contexto 22 pode determinar se a LCU é uma última LCU em um segmento de fatia com base na segunda informação que é obtida a partir dos dados sobre a LCU a partir dos dados de acordo com os segmentos de fatia do fluxo de bits. 0 inicializador de contexto 22 pode obter uma sequência binária a partir dos dados sobre a LCU dentre os dados de acordo com os segmentos de fatia.
[000133] Na operação 25, quando o elemento de sintaxe é um último elemento de sintaxe na LCU, o segmento de fatia dependente pode ser incluído na imagem na qual a LCU é incluída, e a LCU é uma última LCU no segmento de fatia, a unidade de armazenamento de contexto 26 pode armazenar as variáveis de contexto para a LCU.
[000134] Independentemente de se o segmento de fatia é um segmento de fatia independente ou um segmento de fatia dependente, quando um segmento de fatia dependente pode ser incluído na imagem, as variáveis de contexto para a LCU podem ser armazenadas.
[000135] Quando vários segmentos de fatia são incluídos na imagem, para codificação de entropia para uma variável de contexto de uma primeira LCU de um segmento de fatia dependente que está localizado próximo a um segmento de fatia atual, variáveis de contexto que são armazenadas no segmento de fatia atual podem ser usadas.
[000136] Na operação 27, uma unidade de restauração de símbolo 24 pode restaurar os símbolos da LCU mediante uso do valor do elemento de sintaxe que é determinado na operação 23.
[000137] O aparelho de decodificação de entropia de vídeo 20 pode determinar um número de pontos de entrada de subconjuntos que são incluídos no segmento de fatia com base na terceira informação que é obtida a partir de um cabeçalho de segmento de fatia do fluxo de bits.
[000138] O aparelho de decodificação de entropia de vídeo 20 pode determinar uma posição de cada um dos pontos de entrada mediante uso de um deslocamento que é um número que é maior por 1 do que um número indicado pela quarta informação sobre um deslocamento de acordo com cada ponto de entrada que é obtido a partir do cabeçalho de segmento de fatia do fluxo de bits. Consequentemente, como o aparelho de decodificação de entropia de vídeo 20, pode determinar com exatidão um ponto de entrada para cada subconjunto tal como uma coluna de segmentos de fatia, blocos de pixels adjacentes, ou LCUs, um ponto de sincronização de entropia no qual uma variável de contexto de LCU próxima deve ser obtida pode ser determinado com exatidão.
[000139] O aparelho de decodificação de entropia de vídeo 20 pode seqüencialmente realizar a decodificação em uma ordem de varredura por rastreio, em cada LCU mediante uso de símbolos codificados das LCUs que são analisadas para cada segmento de fatia nas operações 21 a 27.
[000140] O aparelho de decodificação de entropia de video 20 pode realizar individualmente a decodificação em cada bloco de pixels adjacentes, à parte de outros blocos de pixels adjacentes. As LCUs que são incluídas em um bloco de pixels adjacentes, atual podem ser seqüencialmente decodificadas de acordo com os blocos de pixels adjacentes.
[000141] Consequentemente, o aparelho de decodificação de entropia de video 20 pode seqüencialmente realizar a decodificação na ordem de varredura por rastreio, em cada LCU mediante uso de simbolos codificados das LCUs que são analisadas para cada segmento de fatia.
[000142] As LCUs que são incluídas em um bloco de pixels adjacentes, predeterminado dentre as LCUs que são incluídas em um segmento de fatia atual podem ser decodificadas de acordo com uma ordem de decodif icação em um bloco de pixels adjacentes, atual.
[000143] Quando todas as LCUs de um segmento de fatia atual pertencer a um bloco de pixels adjacentes, atual, o aparelho de decodificação de entropia de vídeo pode decodificar, na ordem de varredura por rastreio no bloco de pixels adjacentes, atual, a pluralidade das LCUs que são incluídas no segmento de fatia atual. Nesse caso, o segmento de fatia atual não está localizado através de uma borda do bloco de pixels adjacentes, atual. 0 aparelho de decodificação de entropia de vídeo 20 pode seqüencialmente decodificar pelo menos um segmento de fatia que é incluído em cada bloco de pixels, adjacentes e pode decodificar uma pluralidade de blocos que são incluídos em cada segmento de fatia na ordem de varredura por rastreio.
[000144] Mesmo quando um segmento de fatia atual inclui pelo menos um bloco de pixels adjacentes, o aparelho de decodificação de entropia de video 20 pode realizar a decodificação, na ordem de varredura por rastreio das LCUs de um bloco de pixels adjacentes, atual no bloco de pixels adjacentes atual, nas LCUs do bloco de pixels adjacentes, atual dentre as LCUs que são incluídas no segmento de fatia atual.
[000145] A predição em imagem pode ser realizada mediante uso de símbolos codificados tal como uma amostra intra que é analisada de acordo com as LCUs, um vetor de movimento, e informação de modo de codificação. Através da predição em imagem, um valor de restauração de um símbolo codificado atual pode ser determinado mediante concisão de um valor de restauração de um símbolo codificado anterior com um valor de diferença entre o símbolo codificado atual e o símbolo codificado anterior. Adicionalmente, um valor de restauração de uma amostra atual pode ser determinado mediante concisão de um valor de restauração de uma amostra adjacente que é restaurada mais cedo do que a amostra atual com um valor de diferença entre a amostra atual e a amostra anterior.
[000146] A decodificação utilizando símbolos codificados de uma LCU pode ser realizada através de quantização inversa, transformação inversa, e compensação de movimento/predição intra. Por exemplo, os coeficientes de transformada das unidades de transformada podem ser restaurados mediante realização de quantização inversa nos símbolos codificados de cada LCU, e informação residual de unidades de predição pode ser restaurada mediante realização de transformada inversa nos coeficientes de transformada das unidades de transformação. A predição intra pode ser realizada mediante uso de uma amostra intra na informação residual. As amostras de uma unidade de predição atual podem ser restauradas através de compensação de movimento que sintetiza a informação 'residual com outra unidade de predição restaurada indicada pelo vetor de movimento. Adicionalmente, compensação SAO e filtragem em laço podem ser realizadas nas LCUs.
[000147] Consequentemente, o aparelho de decodificação de entropia de video 20 pode decodificar seqüencialmente as LCUs de cada segmento de fatia e cada bloco de pixels adjacentes de acordo com uma ordem de decodificação em um bloco de pixels adjacentes.
[000148] Quando um bloco de pixels adjacentes inclui pelo menos um segmento de fatia de acordo com uma modalidade exemplar, um bloco de pixels adjacentes pode ser restaurado mediante decodificação das LCUs para cada segmento de fatia e combinando os resultados da restauração dos segmentos de fatia.
[000149] Quando um segmento de fatia inclui pelo menos um bloco de pixels adjacentes de acordo com uma modalidade exemplar, um segmento de fatia pode ser restaurado mediante decodificação das LCUs para cada bloco de pixels adjacentes e combinação dos resultados de restauração dos blocos de pixels adjacentes.
[000150] O aparelho de decodificação de entropia de video 20 pode restaurar uma imagem que é compreendida de blocos de pixels adjacentes restaurados ou segmentos de fatia, restaurados.
[000151] De acordo com os métodos de codificação/decodificação de entropia das Figuras 1A, IB, 2A e 2B, quando um segmento de fatia dependente pode ser usado em uma imagem atual, após codificação de entropia (decodificação) de uma última LCU de cada segmento de fatia ser concluida, uma variável de contexto pode ser armazenada. Consequentemente, mesmo quando um segmento de fatia anterior é um segmento de fatia independente, uma variável inicial de uma variável de contexto que é necessária para um próximo segmento de fatia dependente, pode ser obtido a partir de uma variável de contexto de uma última LCU de um segmento de fatia independente que é previamente codificado.
[000152] Como informação indicando um número que é menor por 1 do que um deslocamento de subconjunto é provido a um segmento de fatia para informar eficientemente sobre um ponto de sincronização de uma variável de contexto para codificação/decodificação de entropia, um tamanho de dados do segmento de fatia pode ser reduzido.
[000153] Uma relação entre um segmento de fatia e um bloco de pixels adjacentes são subdominios usados pelo aparelho de codificação de entropia de video 10 e pelo aparelho de decodificação de entropia de video 20 de acordo com uma modalidade exemplar será explicado agora com referência às Figuras 3 e 4.
[000154] A Figura 3 é um diagrama ilustrando blocos de pixels adjacentes e LCUs em uma imagem 301.
[000155] Quando a codificação e a decodificação são realizadas independentemente em cada dominio que é gerado mediante divisão da imagem 301 em pelo menos uma direção a partir de uma direção vertical e de uma direção horizontal, cada dominio pode ser referido como um bloco de pixels adjacentes. Para realizar o processamento em tempo real mediante o uso de uma grande quantidade de dados de um video de alta definição (HD) ou de um video de definição excessivamente elevada (UHD), os blocos de pixels adjacentes podem ser formados mediante divisão das imagens em ao menos uma coluna e ao menos uma fileira e a codificação/decodificação podem ser realizadas de acordo com os blocos de pixels adjacentes.
[000156] Uma vez que cada bloco de pixels adjacentes na imagem 301 é um domínio espacial onde a codificação/decodificação é realizada individualmente, apenas um bloco de pixels adjacentes que se pretende codificar/decodificar pode ser codificado/decodifiçado seletivamente.
[000157] Na Figura 3, a imagem 301 pode ser dividida em blocos de pixels adjacentes mediante bordas de coluna 321 e 323 e bordas de fileira 311 e 313. Um domínio circundado por uma das bordas de coluna 321 e 323 e uma das bordas de fileira 311 e 313 é um bloco de pixels adjacentes.
[000158] Quando uma imagem 301 é dividida em blocos de pixels adjacentes e é codificada, informação sobre as posições das bordas de coluna 321 e 323 e das bordas de fileira 311 e 313 podem ser contidas em, e podem ser transmitidas através de um SPS ou um PPS. Quando a imagem 301 é decodificada, informação sobre as posições das bordas de coluna 321 e 323 e sobre as bordas de fileira 311 e 313 pode ser analisada a partir do SPS ou do PPS, decodificação pode ser realizada em blocos de pixels adjacentes e subdomínios da imagem 301 podem ser restaurados, e os subdomínios podem ser restaurados para uma imagem 301 mediante uso da informação sobre as bordas de coluna 321 e 323 e as bordas de fileira 311 e 313.
[000159] A imagem 301 é dividida em LCUs e codificação/decodificação é realizada nos blocos. Consequentemente, cada bloco de pixels adjacentes que é formado mediante divisão da imagem 301, através do uso das bordas de coluna, 321 e 323, e das bordas de fileira, 311 e 313, pode incluir as LCUs. Como as bordas de coluna 321 e 323 e as bordas de fileira 311 e 313 que dividem a imagem 301 passa através das bordas entre as LCUs adjacentes, cada LCU não é dividida. Consequentemente, cada bloco de pixels adjacentes pode incluir M (M é um número inteiro) LCUs.
[000160] Consequentemente, como processamento é realizado nos blocos de pixels adjacentes da imagem 301, a codificação/decodificação pode ser realizada nas LCUs em cada bloco de pixels adjacentes. Um número em cada LCU na Figura 3 denota uma ordem de varredura das LCUs em um bloco de pixels adjacentes, isto é, uma ordem na qual o processamento é realizado para codificação ou decodificação.
[000161] Um bloco de pixels adjacentes pode ser diferente de um segmento de fatia e uma fatia em que a codificação/decodificação é realizada independentemente entre blocos de pixels adjacentes. Um segmento de fatia e uma fatia serão explicados agora em detalhe com referência à Figura 4 .
[000162] A Figura 4 é um diagrama ilustrando um segmento de fatia e as LCUs em uma imagem 401.
[000163] A imagem 401 é dividida em uma pluralidade de LCUs. Na Figura 4, a imagem 401 é dividida em 13 LCUs em uma direção horizontal e 9 LCUs em uma direção vertical, isto é, de 117 LCUs no total. Cada LCU pode ser dividida em unidades de codificação que têm uma estrutura de árvore e pode ser codifiçada/decodifiçada.
[000164] A imagem 401 é dividida em uma fatia superior e uma fatia inferior, isto é, duas fatias, por uma linha de borda 411. A imagem 401 é dividida em segmentos de fatia 431, 433, 435 e 441 mediante linhas de borda 421, 423 e 411.
[000165] Os segmentos de fatia 431, 433, 435 e 441 podem ser classificados em segmentos de fatia dependentes e segmentos de fatia independentes. Em um segmento de fatia dependente, informação que é usada ou gerada em codificação de origem e codificação de entropia para um segmento de fatia predeterminado pode ser referida para codificação de origem e codificação de entropia de outros segmentos de fatia. Similarmente, durante a decodificação, informação que é usada ou restaurada na decodificação de origem e informação analisada em codificação de entropia para um segmento de fatia predeterminado entre os segmentos de fatia dependentes pode ser referida para codificação de entropia e decodificação de origem de outro segmento de fatia.
[000166] Em um segmento de fatia independente, informação que é usada ou gerada na codificação de origem e codificação de entropia realizada em segmentos de fatia não é absolutamente referida e é codificada independentemente. Similarmente, durante a decodificação, para decodificação de entropia e decodificação de origem de um segmento de fatia independente, informação analisada e informação de restauração de outro segmento de fatia não são absolutamente usadas.
[000167] Informação sobre se um segmento de fatia é um segmento de fatia dependente ou um segmento de fatia independente pode ser contida e pode ser transmitida através de um cabeçalho de segmento de fatia. Quando a imagem 301 deve ser decodificada, informação sobre um tipo de segmento de fatia pode ser analisada a partir do cabeçalho de segmento de fatia, e pode ser determinado se o segmento de fatia atual é independentemente decodificado de outro segmento de fatia ou restaurado mediante referência ao segmento de fatia de acordo com o tipo de segmento de fatia.
[000168] Especificamente, um valor de elementos de sintaxe de um cabeçalho de segmento de fatia de um segmento de fatia independente, isto é, informação de cabeçalho, pode não ser determinada por ser inferida a partir da informação de cabeçalho de um segmento de fatia precedente. Em comparação, informação de cabeçalho de um cabeçalho de segmento de fatia de um segmento de fatia dependente pode ser determinada por ser inferida a partir da informação de cabeçalho de um segmento de fatia precedente.
[000169] Cada fatia pode incluir N (N é um número inteiro) LCUs. Uma fatia pode incluir pelo menos um segmento de fatia. Quando uma fatia inclui apenas um segmento de fatia, a fatia pode incluir um segmento de fatia independente. Uma fatia pode incluir um segmento de fatia independente e pelo menos um segmento de fatia dependente que são subsequentes ao segmento de fatia independente. Pelo menos um segmento de fatia que é incluido em uma fatia pode ser transmitido/recebido através da mesma unidade de acesso.
[000170] A fatia superior da imagem 410 inclui o segmento de fatia 421 que é um segmento de fatia independente e os segmentos de fatia 433 e 435 que são dois segmentos de fatia dependentes. A fatia inferior da imagem 410 inclui apenas o segmento de fatia 441 que é um segmento de fatia independente.
[000171] Um processo de analisar um simbolo através de decodificação de entropia será explicado agora em detalhe com referência às Figuras 5 a 7.
[000172] A Figura 5 é um fluxograma de uma operação de análise CABAC 50 de acordo com uma modalidade exemplar.
[000173] Quando o aparelho de decodificação de entropia de video 20 realiza decodificação CABAC de acordo com uma modalidade exemplar, um simbolo para um elemento de sintaxe predeterminado pode ser analisado através da operação de análise CABAC 50.
[000174] Na operação 511, o aparelho de decodificação de entropia de video 20 determina se um elemento de sintaxe a ser atualmente analisado é um primeiro elemento de sintaxe em um subconjunto tal como uma coluna de segmentos de fatia, blocos de pixels adjacentes ou LCUs, isto é, um elemento de sintaxe gue é primeiramente analisado.
[000175] Quando for determinado na operação 511 que o elemento de sintaxe a ser atualmente analisado é um primeiro elemento de sintaxe, a operação de análise CABAC 50 prossegue para a operação 513. Na operação 513, uma variável interna de contexto é inicializada. A variável interna de contexto pode ser um indice de contexto e uma tabela de contexto para um elemento de sintaxe atual. A variável interna de contexto pode ser determinada como sendo um valor padrão preestabelecido.
[000176] Na operação 521, o aparelho de decodificação de entropia de video 20 pode obter uma sequência binária indicando o elemento de sintaxe atual a partir de um fluxo de bits. Nas operações 523 e 525, um primeiro indice binário da sequência binária pode ser ajustado para -1; e um indice binário pode aumentar por 1 sempre que 1 bit for adicionado à sequência binária.
[000177] Na operação 527, o aparelho de decodificação de entropia de video 20 pode obter uma variável de contexto correspondendo a um índice binário atual do elemento de sintaxe. Por exemplo, a variável de contexto correspondendo ao indice binário atual pode incluir uma tabela de contexto, um índice de contexto e um indicador de desvio. Os dados preestabelecidos sobre uma variável de contexto podem ser armazenados previamente no aparelho de decodificação de entropia de vídeo 20 para corresponder a cada índice binário de cada elemento de sintaxe. Uma variável de contexto correspondendo a um índice binário do elemento de sintaxe atual pode ser selecionada com base nos dados previamente armazenados.
[000178] Na operação 529, o aparelho de decodificação de entropia de vídeo 20 pode decodificar uma sequência de bits correspondendo à variável de contexto da sequência binária. Um estado de desvio que é atribuído ao índice binário atual pode ser determinado com base nos dados sobre um indicador de desvio que é preestabelecido de acordo com cada índice binário de acordo com os elementos de sintaxe. Um índice de contexto pode ser determinado com base em um atributo (por exemplo, um índice de varredura de uma unidade de dados, um índice de componente de cor ou um tamanho de uma unidade de dados) ou um estado atual de uma unidade de dados (por exemplo, uma unidade de codificação, uma unidade de transformação, ou uma unidade de predição) que é atualmente codificada de acordo com cada elemento de sintaxe. Uma sequência de bits correspondendo a um ’ índice de contexto atual e um estado de desvio pode ser determinado em uma tabela de contexto.
[000179] Na operação 531, o aparelho de decodificação de entropia de vídeo 20 pode comparar os dados que contêm uma sequência de bits que está disponível no elemento de sintaxe atual com uma sequência de bits, atual que é determinada na operação 529. Quando a sequência de bits, atual não pertence aos dados de sequência de bits, a operação de análise CABAC 50 pode retornar à operação 525 para aumentar o índice binário por 1 e operações 527 e 529 para determinar uma variável de contexto para uma sequência binária obtida mediante adição de um bit e decodificar uma sequência de bits.
[000180] Quando for determinado na operação 531 que a sequência de bits atual que é determinada na operação 529 pertence aos dados de sequência de bits para o elemento de sintaxe, a operação de análise CABAC 50 prosseque para a operação 533. Na operação 533, pode ser determinado se o elemento de sintaxe atual é informação ”pcm_flag" indicando um modo PCM e um valor de elemento de sintaxe indica o modo PCM. Quando se determinar na operação 529 que uma unidade é uma LCU no modo PCM, a operação de análise CABAC 50 prossegue para a operação 535. Na operação 535, a operação de análise CABAC 50 pode ser inicializada.
[000181] Quando for determinado na operação 533 que um modo não é o modo PCM, a operação de análise CABAC 50 prossegue para a operação 537. Na operação 537, pode ser determinado se o elemento de sintaxe atual é um último elemento de sintaxe em um subconjunto atual (por exemplo, uma LCU ou um segmento de fatia), isto é, é um objeto a ser analisado por último. Quando for determinado na operação 537 que o elemento de sintaxe atual é um último elemento de sintaxe, a operação de análise CABAC 50 prossegue para a operação 539. Na operação 539, uma variável de contexto que é finalmente atualizada em uma LCU atual pode ser armazenada.
[000182] Quando o armazenamento da variável de contexto é concluído ou o elemento de sintaxe atual não é um último elemento de sintaxe, um processo de analisar o elemento de sintaxe atual pode terminar.
[000183] A variável de contexto que é armazenada na operação 539 pode ser usada para decodif icação de entropia de outro subconjunto. A Figura 6A é um diagrama para explicar a decodificação de entropia utilizando uma variável de contexto armazenada.
[000184] Quando um subconjunto é cada fileira LCU, uma variável de contexto inicial de uma fileira LCU atual pode ser determinada mediante uso de uma variável de contexto final de uma fileira LCU anterior.
[000185] Por exemplo, uma variável de contexto inicial de uma primeira LCU de uma fileira LCU atual em uma imagem 60 pode ser determinada para ser, isto é, pode ser sincronizada com uma variável de contexto final de uma última LCU de uma fileira de LCU que está localizada logo acima da fileira de LCU atual. Consequentemente, enquanto uma variável de contexto inicial de uma primeira LCU 61 de uma primeira fileira de LCU pode ser ajustada para uma variável de contexto padrão, uma variável de contexto inicial 631 de uma primeira LCU 63 de uma segunda fileira de LCU pode ser determinada para ser uma variável de contexto final 629 de uma última LCU 62 da primeira fileira de LCU, e uma variável de contexto inicial 651 de uma primeira LCU 66 de uma terceira fileira de LCU pode ser determinada para ser uma variável de contexto final 649 de uma última LCU 64 da segunda fileira de LCU.
[000186] Se uma distância de sincronização for 1, para sincronização de uma variável de contexto de uma LCU atual, a unidade de armazenamento de contexto 26 pode usar uma variável de contexto de uma segunda LCU de uma fileira de LCU superior. Consequentemente, quando a atualização da segunda LCU da fileira de LCU superior estiver concluída e uma variável de contexto final for determinada, a variável de contexto final pode ser armazenada, e uma variável de contexto de uma LCU de uma fileira de LCU atual pode ser determinada mediante uso da variável de contexto final armazenada da fileira de LCU superior.
[000187] A Figura 6B é um fluxograma detalhado de operação 539 de armazenar uma variável de contexto na operação de análise CABAC 50 de acordo com uma modalidade exemplar.
[000188] Na operação 551, a unidade de armazenamento de contexto 16 ou 26 pode determinar se uma LCU atual é uma segunda LCU em um subconjunto atual e sincronização de uma variável de contexto tem que ser realizada em uma imagem atual. Quando for determinado na operação 551 que a sincronização da variável de contexto é necessária e a LCU atual é uma segunda LCU, a operação 539 prossegue para a operação 553. Na operação 553, a unidade de armazenamento de contexto 16 ou 26 pode armazenar uma variável de contexto final da LCU atual para processamento paralelo de frente de onda (WPP) . Em WPP, quando uma distância de sincronização é 1 como mostrado na Figura 6A, uma variável de contexto de uma primeira LCU de uma fileira de LCU atual pode ser sincronizada com uma variável de contexto que é armazenada em uma segunda LCU de uma fileira de LCU superior.
[000189] Na operação 561, a unidade de armazenamento de contexto 16 ou 26 pode determinar se a LCU atual é uma última LCU em um segmento de fatia atual e um segmento de fatia dependente pode existir na imagem atual. Quando for determinado na operação 561 que o segmento de fatia dependente pode existir e o segmento de fatia atual é um último segmento de fatia, a operação 539 pode prosseguir para a operação 563. Na operação 563, a unidade de armazenamento de contexto 16 ou 26 pode armazenar uma variável de contexto final da LCU atual para o segmento de fatia dependente que é subsequente.
[000190] A Figura 7 é um diagrama ilustrando uma sintaxe de um cabeçalho de segmento de fatia 71 de acordo com uma modalidade exemplar.
[000191] O aparelho de decodificação de entropia de video 20 pode obter informação sobre deslocamentos de ponto de entrada de um segmento de fatia atual a partir do cabeçalho de segmento de fatia 71. Em detalhe, na informação 72, quando um segmento de fatia em uma imagem na qual o segmento de fatia atual é incluido satisfaz pelo menos uma condição a partir de uma condição para uma possibilidade "tiles_enabled_flag" de que existe um bloco de pixels adjacentes e uma condição para uma possibilidade "entropy_coding_sync_enabled_flag" de que uma variável de contexto é sincronizada de acordo com as LCUs, o cabeçalho de segmento de fatia 71 pode conter informação 73 "num_entry_point_offsets" indicando um número de pontos de entrada de subconjuntos que são incluidos no segmento de fatia atual. A informação "entry_point_offset_minusl[i]" 75 indicando um número que é menor por 1 do que um deslocamento de acordo com cada ponto de entrada real para cada ponto de entrada 74 pode ser atribuida de acordo com os pontos de entrada.
[000192] Quando existirem dois ou mais subconjuntos, uma vez que um deslocamento de subconjunto tem que ser maior do que 0, informação de deslocamento de ponto de entrada "entry_point_offset_minusl[i]" pode ser obtida mediante subtração de 1 a partir de um deslocamento de subconjunto real. Consequentemente, o deslocamento de subconjunto real pode ser um valor que é maior por 1 do que um número indicado pela informação de deslocamento de ponto de entrada "entry_point_offset_minusl[i]".
[000193] Um primeiro byte de um subconjunto atual pode ser determinado mediante soma dos deslocamentos de subconjunto a partir de um subconjunto anterior para um subconjunto atual mediante uso de informação de deslocamento de ponto de entrada "entry_point_offset_minusl[i]" que é atribuída a cada subconjunto. Consequentemente, um valor obtido após a soma dos valores que são maiores por 1 do que um número indicado pela informação de deslocamento de ponto de entrada "entry_point_offset_minusl[i]" de subconjuntos a partir do subconjunto anterior para o subconjunto atual pode ser determinado como um primeiro byte do subconjunto atual.
[000194] Um indice de bytes que constitui cada subconjunto começa com 0, e um indice de byte indicando um primeiro byte é 0. Consequentemente, um último byte do subconjunto atual pode ser determinado mediante soma do primeiro byte do subconjunto atual com um número indicado pela informação de deslocamento de ponto de entrada "entry_point_offset_minus1[i]" que é atribuída ao subconjunto atual.
[000195] No aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar e no aparelho de decodificação de entropia de video 20 de acordo com uma modalidade exemplar, blocos nos quais os dados de video são divididos são LCUs e cada uma das LCUs é dividida em unidades de codificação que têm uma estrutura de árvore como descrito acima. Um método de codificação de video e aparelho e um método de decodificação de video e aparelho com base em uma LCU e unidades de codificação tendo uma estrutura de árvore de acordo com a modalidade exemplar serão descritos agora com referência às Figuras 8 a 20.
[000196] A Figura 8 é um diagrama de blocos de um aparelho de codificação de vídeo 100 com base em unidades de codificação que têm uma estrutura de árvore de acordo com uma modalidade exemplar.
[000197] O aparelho de codificação de vídeo 100 envolvendo predição de vídeo com base nas unidades de codificação tendo uma estrutura de árvore inclui um divisor de unidade de codificação máxima (LCU) 110, um determinador de unidade de codificação 120, e uma unidade de saída 130 (por exemplo, uma saída, etc.). Em seguida, o aparelho de codificação de vídeo 100 envolvendo predição de vídeo com base nas unidades de codificação tendo uma estrutura de árvore de acordo com uma modalidade exemplar é referido como um "aparelho de codificação de vídeo 100" para conveniência de explanação.
[000198] O divisor de unidade de codificação LCU 110 pode dividir uma imagem atual com base em uma LCU que é uma unidade de codificação que tem um tamanho máximo para a ilustração atual de uma imagem. Se a imagem atual for maior do que a LCU, os dados de imagem da imagem atual podem ser divididos em pelo menos uma LCU. A LCU de acordo com uma modalidade pode ser uma unidade de dados tendo um tamanho de 32x32, 64x64, 128x128, 256x256, etc., em que o formato da unidade de dados é um quadrado que tem uma largura e comprimento em quadrados de 2.
[000199] Uma unidade de codificação de acordo com uma modalidade exemplar pode ser caracterizada por um tamanho máximo e uma profundidade. A profundidade denota um número de vezes em que a unidade de codificação é dividida espacialmente a partir da LCU e, à medida que a profundidade é aprofundada ou aumentada, unidades de codificação mais profundas, de acordo com as profundidades, podem ser divididas a partir da LCU para uma unidade de codificação minima. Uma profundidade da LCU é uma profundidade mais elevada e uma profundidade da unidade de codificação minima é uma profundidade mais baixa. Como o tamanho de uma unidade de codificação correspondendo a cada profundidade diminui à medida que a profundidade da LCU é aprofundada, uma unidade de codificação correspondendo a uma profundidade superior pode incluir uma pluralidade de unidades de codificação correspondendo às profundidades inferiores.
[000200] Conforme descrito acima, os dados de imagem do imagem 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 uma das unidades de codificação máxima pode incluir unidades de codificação mais profunda que são divididas de acordo com as profundidades. Como a LCU de acordo com uma modalidade exemplar é dividida de acordo com as profundidades, os dados de imagem de um dominio espacial incluido na LCU podem ser classificados de forma hierárquica de acordo com as profundidades.
[000201] Uma profundidade máxima e um tamanho máximo de uma unidade de codificação, que limitam o número total de vezes em que a altura e uma largura da LCU são divididas de forma hierárquica, podem ser predeterminados.
[000202] O determinador de unidade de codificação 120 codifica pelo menos uma região dividida obtida mediante divisão de uma região da LCU de acordo com as profundidades, e determina uma profundidade para produzir os dados de imagem finalmente codificados de acordo com a pelo menos uma região dividida. Em outras palavras, o determinador de unidade de codificação 120 determina uma profundidade codificada mediante codificação dos dados de imagem nas unidades de codificação mais profunda de acordo com as profundidades, de acordo com a LCU da imagem atual, e selecionando uma profundidade tendo o erro de codificação minimo. A profundidade codificada determinada e os dados de imagem codificados de acordo com a profundidade codificada determinada são emitidos para a unidade de saída 130.
[000203] Os dados de imagem na LCU são codificados com base nas unidades de codificação mais profundas correspondendo a pelo menos uma profundidade igual ou abaixo da profundidade máxima, e os resultados da codificação dos dados de imagem são comparados com base em cada uma das unidades de codificação mais profundas. Uma profundidade tendo o erro de codificação minimo pode ser selecionada após comparação dos erros de codificação das unidades de codificação mais profundas. Pelo menos uma profundidade codificada pode ser selecionada para cada LCU.
[000204] O tamanho da LCU é dividido à medida que uma unidade de codificação é dividida hierarquicamente de acordo com as profundidades, e à medida que aumenta o número de unidades de codificação. Mesmo se as unidades de codificação corresponder à mesma profundidade em uma LCU, cada uma das unidades de codificação correspondendo à mesma profundidade pode ser dividida para uma profundidade inferior mediante medição de um erro de codificação dos dados de imagem de cada unidade de codificação, separadamente. Consequentemente, mesmo quando os dados de imagem são incluidos em uma LCU, os dados de imagem são divididos em regiões de acordo com as profundidades e os erros de codificação podem diferir de acordo com as regiões em uma LCU, e assim as profundidades codificadas podem diferir de acordo com as regiões nos dados de imagem. Assim, uma ou mais profundidades codificadas podem ser determinadas em uma LCU, e os dados de imagem da LCU podem ser divididos de acordo com as unidades de codificação de pelo menos uma profundidade codificada.
[000205] Consequentemente, o determinador de unidade de codificação 120 pode determinar unidades de codificação tendo uma estrutura de árvore incluida na LCU. 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, dentre todas as unidades de codificação mais profunda incluidas na LCU. Uma unidade de codificação de uma profundidade codificada pode ser determinada hierarquicamente de acordo com as profundidades na mesma região da LCU, e podem ser determinadas independentemente em diferentes regiões. Similarmente, uma profundidade codificada em uma região atual pode ser determinada independentemente a partir de uma profundidade codificada em outra região.
[000206] Uma profundidade máxima de acordo com uma modalidade da presente invenção é um indice relacionado ao número de vezes que a divisão é realizada a partir de uma LCU para uma unidade de codificação minima. Uma primeira profundidade máxima de acordo com uma modalidade pode denotar o número total de vezes em que a divisão é realizada a partir da LCU para a unidade de codificação mínima. Uma segunda profundidade máxima de acordo com uma modalidade da presente invenção pode denotar o número total de níveis de profundidade a partir da LCU para a unidade de codificação mínima. Por exemplo, quando uma profundidade da LCU é de 0, uma profundidade de uma unidade de codificação, na qual a LCU é dividida uma vez, pode ser ajustada para 1, e uma profundidade de uma unidade de codificação, na qual a LCU dividida duas vezes, pode ser ajustada para 2. Aqui, se a unidade de codificação mínima for uma unidade de codificação na qual a LCU é dividida quatro vezes, existem 5 níveis de profundidade, de profundidade 0, 1, 2, 3 e 4, e assim a primeira profundidade máxima pode ser ajustada para 4, e a segunda profundidade máxima pode ser ajustada para 5.
[000207] A codificação de predição, e a transformada, podem ser realizadas de acordo com a LCU. A codificação de predição e a transformada também são realizadas com base nas unidades de codificação mais profundas de acordo com uma profundidade igual ou uma profundidade menor do que a profundidade máxima, de acordo com a LCU.
[000208] Como o número de unidades de codificação mais profunda aumenta sempre que a LCU é dividida de acordo com as profundidades, a codificação incluindo a codificação de predição e a transformação é realizada em todas as unidades de codificação mais profunda geradas à medida que aumenta a profundidade. Para conveniência de descrição, a codificação de predição e a transformação serão descritas agora com base na unidade de codificação de uma profundidade atual, em uma LCU.
[000209] O 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 tal como codificação de predição, transformação, e codificação de entropia, são realizadas, e dessa vez, a mesma unidade de dados pode ser usada para todas as operações ou unidades de dados diferentes podem ser usadas para cada operação.
[000210] Por exemplo, o aparelho de codificação de video 100 pode selecionar não apenas uma unidade de codificação para codificar os dados de imagem, mas também uma unidade de dados diferente da unidade de codificação para realizar a codificação de predição nos dados de imagem na unidade de codificação.
[000211] Para realizar codificação de predição na LCU, a codificação de predição pode ser realizada com base em uma unidade de codificação correspondendo a uma profundidade codificada, isto é, com base em uma unidade de codificação que não mais é dividida em unidades de codificação correspondendo a uma profundidade inferior. Em seguida, a unidade de codificação que não é mais dividida e se torna uma unidade básica para codificação de predição será referida agora como uma 'unidade de predição'. Uma partição obtida mediante divisão da unidade de predição pode incluir uma unidade de predição ou uma unidade de dados obtida mediante divisão de pelo menos uma de uma altura e uma largura da unidade de predição. Uma partição é uma unidade de dados obtida pela divisão da unidade de predição da unidade de codificação e a unidade de predição pode ser uma partição com o mesmo tamanho que a unidade de codificação.
[000212] 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, um tamanho de uma partição pode ser 2Nx2N, 2NxN, Nx2N, ou NxN. Exemplos de um tipo de partição incluem partições simétricas que são obtidas mediante divisão simétrica de uma altura ou largura da unidade de predição, partições obtidas mediante divisão assimétrica da altura ou largura da unidade de predição, tal como l:n ou n:l, partições que são obtidas mediante divisão geométrica da unidade de predição, e partições tendo formatos arbitrários.
[000213] 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 salto. Por exemplo, o modo intra ou o modo inter pode ser realizado na partição de 2Nx2N, 2NxN, Nx2N ou NxN. O modo de salto pode ser realizado apenas na partição de 2Nx2N. A codificação é realizada independentemente 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 minimo.
[000214] O aparelho de codificação de video 100 de acordo com uma modalidade exemplar também pode realizar a transformação nos dados de imagem em uma unidade de codificação com base não apenas na unidade de codificação para codificar os dados de imagem, mas também com base em uma unidade de dados que é diferente da unidade de codificação. Para realizar a transformada na unidade de codificação, a transformada pode ser realizada com base em uma unidade de transformada tendo um tamanho menor do que ou igual àquele da unidade de codificação. Por exemplo, a unidade de dados para a transformada pode incluir uma unidade de dados para um modo intra e uma unidade de dados para um modo inter.
[000215] A unidade de transformada na unidade de codificação pode ser dividida de forma recursiva em regiões de tamanhos menores de maneira semelhante a da unidade de codificação de acordo com a estrutura de árvore. Assim, os dados residuais na unidade de codificação podem ser divididos de acordo com a unidade de transformada de acordo com a estrutura de árvore, de acordo com as profundidades de transformada.
[000216] Uma profundidade de transformada indicando o número de vezes que a divisão é realizada para alcançar a TU mediante divisão da altura e largura da unidade de codificação também pode ser estabelecida na unidade de transformada. Por exemplo, em uma unidade de codificação atual de 2Nx2N, uma profundidade de transformada pode ser 0 quando o tamanho de uma TU for 2Nx2N, pode ser 1 quando o tamanho de uma unidade de transformada é NxN, e pode ser 2 quando o tamanho de uma TU for N/2xN/2. Isto é, a unidade de transformada tendo a estrutura de árvore também pode ser estabelecida de acordo com as profundidades de transformada.
[000217] Informação de codificação de acordo com as unidades de codificação correspondendo a uma profundidade codificada requer não apenas informação sobre a profundidade codificada, mas também sobre informação relacionada à codificação de predição e transformação. Consequentemente, o determinador de unidade de codificação 120 não apenas determina uma profundidade codificada tendo o menos erro de codificação, mas também determina um tipo de partição em uma unidade de predição, um modo de predição de acordo com as unidades de predição, e um tamanho de uma TU para transformação.
[000218] As unidades de codificação de acordo com uma estrutura de árvore em uma LCU e um método de determinar uma partição, de acordo com as modalidades da presente invenção, serão descritas em detalhe abaixo com referência às Figuras 10 a 20.
[000219] O determinador de unidade de codificação 120 pode medir um erro de codificação de unidades de codificação mais profundo de acordo com as profundidades utilizando Otimização de Distorção de Taxa com base em multiplicadores Lagrangianos.
[000220] A unidade de saida 130 produz os dados de imagem da LCU, que é codificada com base na pelo menos uma profundidade codificada determinada pelo determinador de unidade de codificação 120, e informação sobre o modo de codificação de acordo com a profundidade codificada, em fluxos de bits.
[000221] Os dados de imagem codificados podem ser obtidos mediante codificação de dados residuais de uma imagem.
[000222] A informação sobre o modo de codificação de acordo com a profundidade codificada pode incluir informação sobre a profundidade codificada, sobre o tipo de partição na unidade de predição, o modo de predição, e o tamanho da unidade de transformada.
[000223] A informação sobre a profundidade codificada pode ser definida pelo uso de informação dividida de acordo com as profundidades, que representa se a codificação é realizada em unidades de codificação de uma profundidade inferior em vez de uma profundidade atual. Se a profundidade atual da unidade de codificação atual for a profundidade codificada, os dados de imagem na unidade de codificação atual são codificados e produzidos, e assim a informação dividida pode ser definida não para dividir a unidade de codificação atual para uma profundidade menor. 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 inferior, e assim a informação dividida pode ser definida para dividir a unidade de codificação atual para obter as unidades de codificação da profundidade inferior.
[000224] Se a profundidade atual não for a profundidade codificada, a codificação é realizada na unidade de codificação que é dividida para unidade de codificação da profundidade inferior. Como existe pelo menos uma unidade de codificação da profundidade inferior em uma unidade de codificação da profundidade atual, a codificação é realizada repetidamente em cada unidade de codificação da profundidade inferior, e assim a codificação pode ser realizada de forma recursiva para as unidades de codificação tendo a mesma profundidade.
[000225] Como as unidades de codificação tendo uma estrutura de árvore são determinadas para uma LCU, e informação sobre pelo menos um modo de codificação é determinada para uma unidade de codificação de uma profundidade codificada, a informação sobre pelo menos um modo de codificação pode ser determinada para uma LCU. Uma profundidade codificada dos dados de imagem da LCU pode ser diferente de acordo com os locais, visto que os dados de imagem são divididos hierarquicamente de acordo com as profundidades e, assim, a informação sobre a profundidade codificada, e o modo de codificação, pode ser ajustada para os dados de imagem.
[000226] Consequentemente, a unidade de saida 130 pode atribuir informação de codificação sobre um percurso codificado correspondente e um modo de codificação para pelo menos uma da unidade de codificação, unidade de predição, e um modo de codificação para ao menos uma da unidade de codificação, unidade de predição, e uma unidade minima incluida na LCU.
[000227] A unidade mínima de acordo com uma modalidade da presente invenção é uma unidade de dados retangular obtida mediante divisão da unidade de codificação mínima constituindo a profundidade mais baixa por 4. Alternativamente, a unidade mínima pode ser uma unidade de dados retangular máxima que pode ser incluída em todas as unidades de codificação, unidades de predição, unidades de partição e TUs incluídas na LCU.
[000228] Por exemplo, a informação de codificação produzida através da unidade de saída 130 pode ser classificada em informação de codificação de acordo com as unidades de codificação, e informação de codificação de acordo com as unidades de predição. A informação de codificação de acordo com as unidades de codificação pode incluir a informação sobre o modo de predição e sobre o tamanho das partições. A informação de codificação de acordo com as unidades de predição pode incluir informação sobre uma direção estimada de um modo inter, em relação a um índice de imagem de referência do modo inter, em relação a um vetor de movimento, em relação a um componente croma de um modo intra, e em relação a um método de interpolação do modo intra.
[000229] A informação sobre um tamanho máximo da unidade de codificação definida de acordo com as imagens, fatias ou GOPs, e informação sobre uma profundidade máxima podem ser inseridas em um cabeçalho de um fluxo de bits, um SPS, ou um PPS.
[000230] Informação sobre um tamanho máximo da unidade de transformada permitida com relação a um vídeo atual, e informação sobre um tamanho minimo da unidade de transformada também podem ser produzidos através de um cabeçalho de um fluxo de bits, um SPS, ou um PPS. A unidade de saida 130 pode codificar e produzir informação de referência relacionada à predição, informação de predição e informação de tipo de fatia .
[000231] No aparelho de codificação de video 100, de acordo com uma modalidade exemplar mais simples, a unidade de codificação mais profunda pode ser uma unidade de codificação obtida mediante divisão de uma altura ou largura de uma unidade de codificação de uma profundidade superior, que está 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 inferior é NxN. A unidade de codificação da profundidade atual tendo o tamanho de 2Nx2N pode incluir no máximo 4 das unidades de codificação da profundidade inferior.
[000232] Consequentemente, o aparelho de codificação de video 10 pode formar as unidades de codificação tendo a estrutura de árvore mediante determinação das unidades de codificação tendo um formato ótimo e um tamanho ótimo para cada LCU, com base no tamanho da LCU e profundidade máxima determinada considerando- se as características da imagem atual. Como a codificação pode ser realizada em cada LCU mediante uso de qualquer um dos vários modos de predição e transformações, um modo de codificação ótima pode ser determinado considerando as características da unidade de codificação de vários tamanhos de imagem.
[000233] Assim, se uma imagem tendo alta resolução ou grande quantidade de dados for codificada em um macro bloco, um número de macro blocos por imagem aumenta excessivamente. Consequentemente, um número de peças de informação compactada gerados para cada macro bloco aumenta, e assim é dificil transmitir a informação compactada e diminui a eficiência de compactação de dados. Contudo, mediante uso do aparelho de codificação de video 100, a eficiência de compactação de imagem pode ser aumentada uma vez que uma unidade de codificação é ajustada enquanto considerando as características de uma imagem enquanto aumentando o tamanho máximo de uma unidade de codificação enquanto considerando um tamanho da imagem.
[000234] O aparelho de codificação de video 100 de acordo com uma modalidade exemplar determina as unidades de codificação de uma estrutura de árvore para cada LCU, e gera simbolos como um resultado da codificação realizada para cada unidade de codificação. O aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar pode realizar codificação de entropia nos simbolos para cada LCU. Especificamente, o aparelho de codificação de entropia de video 10 pode realizar codificação de entropia em cada LCU de acordo com uma fileira de LCUs incluindo as LCUs que são dispostas serialmente em uma direção horizontal, para cada bloco de pixels adjacentes ou segmento de fatia gerado pela divisão de uma imagem. 0 aparelho de codificação de entropia de video 10 pode realizar simultaneamente codificação de entropia paralela em duas ou mais fileiras de LCUs.
[000235] O aparelho de codificação de entropia de video 10 pode gerar uma sequência de bits de simbolos mediante realização de binarização nos simbolos que são determinados mediante realização de codificação nas LCUs. Uma variável de contexto de cada índice binário de um valor de elemento de sintaxe correspondendo a um símbolo de uma LCU pode ser determinada, e uma sequência binária indicando o valor de elemento de sintaxe pode ser determinada com base na variável de contexto de um elemento de sintaxe. 0 aparelho de codificação de entropia de vídeo 10 pode adotar uma sequência binária indicada por uma variável de contexto atual que é determinada em uma tabela de contexto para um valor de elemento de sintaxe atual.
[000236] Após formar a sequência binária para todos os elementos de sintaxe para a LCU, o aparelho de codificação de entropia de vídeo 10 pode determinar se armazena as variáveis de contexto que são determinadas na LCU. Quando o elemento de sintaxe é um último elemento de sintaxe na LCU, um segmento de fatia dependente pode ser incluído em uma imagem na qual a LCU é incluída, e a LCU é uma última LCU em um segmento de fatia, as variáveis de contexto para a LCU podem ser armazenadas.
[000237] A unidade de armazenamento de contexto 16 pode armazenar as variáveis de contexto para uma LCU quando o segmento de fatia dependente puder ser incluída em uma imagem, independentemente de se um segmento de fatia é um segmento de fatia independente ou um segmento de fatia dependente.
[000238] Quando vários segmentos de fatias são incluídos em uma imagem, para codificação de entropia para uma variável de contexto de uma primeira LCU de um segmento de fatia dependente que está localizado próximo a um segmento de fatia atual, uma variável de contexto que é armazenada no segmento de fatia atual pode ser usada.
[000239] A Figura 9 é um diagrama de blocos de um aparelho de decodif icação de vídeo 200 com base nas unidades de codificação que têm uma estrutura de árvore de acordo com uma modalidade exemplar.
[000240] O aparelho de decodificação de video 200 que envolve predição de video com base em unidades de codificação tendo uma estrutura de árvore de acordo com uma modalidade exemplar inclui um receptor 210, um extrator de informação de codificação e dados de imagem 220, e um decodificador de dados de imagem 230. Em seguida, o aparelho de decodif icação de video 200 através de predição de video baseada em unidades de codificação tendo uma estrutura de árvore de acordo com uma modalidade exemplar será referido como 'aparelho de decodificação de video 200' para conveniência de explanação.
[000241] As definições de vários termos, tais como uma unidade de codificação, uma profundidade, uma unidade de predição, uma unidade de transformação, e informações sobre os vários modos de codificação, para operações de decodificação do aparelho de decodificação de video 200 são idênticas àquelas descritas com referência à figura 8 e ao aparelho de codificação de video 100.
[000242] O receptor 210 recebe e analisa um fluxo de bits de um video codificado. 0 extrator de informação de codificação e dados de imagem 220 extrai os 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 produz os dados de imagem extraídos para o decodificador 230. 0 extrator de informação de codificação e dados de imagem 220 pode extrair informação sobre um tamanho máximo de uma unidade de codificação de uma imagem atual, a partir de um cabeçalho sobre uma imagem atual, de um SPS, ou de um PPS.
[000243] O extrator de informação de codificação e dados de imagem 220 extrai informação 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 LCU, a partir do fluxo de bits analisado. A informação extraída sobre a profundidade codificada e o modo de codificação é emitida para o decodificador de dados de imagem 230. Em outras palavras, os dados de imagem em um fluxo de bits são divididos para a LCU de modo que o decodificador de dados de imagem 230 decodifica os dados de imagem para cada LCU.
[000244] A informação sobre a profundidade codificada e o modo de codificação de acordo com a LCU pode ser ajustada para informação sobre ao menos uma unidade de codificação correspondendo à profundidade codificada, e informação sobre um modo de codificação pode incluir informação 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. A informação de divisão de acordo com as profundidades pode ser extraída como a informação sobre a profundidade codificada.
[000245] A informação sobre a profundidade codificada e o modo de codificação de acordo com cada LCU extraída pelos dados de imagem e extrator de informação de codificação 220 é informação sobre uma profundidade codificada e um modo de codificação determinado para gerar um erro de codificação mínimo quando um codificador, tal como o aparelho de codificação de vídeo 100, realiza repetidamente a codificação para cada unidade de codificação mais profunda de acordo com as profundidades de acordo com cada LCU. Consequentemente, o aparelho de decodificação de vídeo 200 pode restaurar uma imagem mediante decodificação dos dados de imagem de acordo com uma profundidade codificada e um modo de codificação que gera o erro de codificação minimo.
[000246] Como a informação de codificação sobre a profundidade codificada e o modo de codificação pode ser atribuida a uma unidade de dados predeterminada dentre uma unidade de codificação correspondente, uma unidade de predição, e uma unidade minima, o extrator de informação de codificação e dados de imagem 220 pode extrair a informação sobre a profundidade codificada e o modo de codificação de acordo com as unidades de dados predeterminadas. Se informação sobre uma profundidade codificada e modo de codificação de uma LCU for gravada de acordo com as unidades de dados predeterminadas, as unidades de dados predeterminadas as quais a mesma informação sobre a profundidade codificada e o modo de codificação é atribuida pode ser inferida como sendo a unidade de dados incluida na mesma LCU.
[000247] O decodificador de dados de imagem 230 restaura a imagem atual mediante decodificação dos dados de imagem em cada LCU com base na informação sobre a profundidade codificada e o modo de codificação de acordo com as LCUs. Em outras palavras, o decodificador de dados de imagem 230 pode decodificar os dados de imagem decodificados com base na informação extraída sobre o tipo de partição, o modo de predição, e a unidade de transformação para cada unidade de codificação dentre as unidades de codificação que têm a estrutura de árvore incluída em cada LCU. Um processo de decodificação pode incluir um processo de predição incluindo predição intra e compensação de movimento, e um processo de transformação inversa.
[000248] O decodificador de dados de imagem 230 pode realizar intra prediçã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 na informação sobre o tipo de partição e o modo de predição da unidade de predição da unidade de codificação de acordo com as profundidades codificadas.
[000249] Além disso, o decodificador de dados de imagem 230 pode ler informação sobre uma unidade de transformada de acordo com uma estrutura de árvore para cada unidade de codificação de modo a realizar transformação inversa com base nas unidades de transformada para cada unidade de codificação, para transformação inversa para cada LCU. Através da transformação inversa, um valor de pixel de um dominio espacial da unidade de codificação pode ser restaurado.
[000250] O decodificador de dados de imagem 230 pode determinar uma profundidade codificada de uma LCU atual mediante uso de informação de divisão de acordo com as profundidades. Se a informação de divisão indicar que os dados de imagem não são mais divididos na profundidade atual, a profundidade atual é uma profundidade codificada. Consequentemente, o decodificador de dados de imagem 230 pode decodificar os dados codificados na LCU atual mediante uso da informação 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.
[000251] Em outras palavras, unidades de dados contendo a informação de codificação incluindo a mesma informação de divisão podem ser agrupadas mediante observação do conjunto de informação de codificação atribuido para a unidade de dados predeterminada dentre a unidade de codificação, a unidade de predição, e a unidade mínima, e as unidades de dados agrupados podem ser considerados como uma unidade de dados a ser decodificada pelo decodificador de dados de imagem 230 no mesmo modo de codificação. Como tal, a unidade de codificação atual pode ser decodificada mediante obtenção da informação sobre o modo de codificação para cada unidade de codificação.
[000252] O receptor 210 pode incluir o aparelho de codificação de entropia de vídeo 20 da Figura 2A. O aparelho de decodificação de entropia de video 20 pode analisar uma pluralidade de fileiras das LCUs a partir de um fluxo de bits, recebido.
[000253] Quando o receptor 22 extrai uma primeira fileira das LCUs e uma segunda fileira das LCUs a partir do fluxo de bits, o primeiro decodificador de entropia 24 pode restaurar seqüencialmente os símbolos da LCUs da primeira fileira de LCUs mediante realização de decodificação de entropia na primeira fileira das LCUs.
[000254] O aparelho de decodificação de entropia de vídeo 20 pode determinar uma sequência binária e um índice binário para uma LCU que é obtido a partir do fluxo de bits. O aparelho de decodificação de entropia de vídeo 20 pode armazenar os dados sobre uma tabela de contexto contendo uma correlação entre uma sequência binária de uma variável de contexto para cada elemento de sintaxe. 0 aparelho de decodificação de entropia de vídeo 20 pode determinar um valor de um elemento de sintaxe indicado por uma sequência binária atual mediante comparação das sequências binárias que podem ser atribuídas ao elemento d sintaxe em uma variável de contexto atual com base na tabela de contexto com a sequência binária no índice binário que é atualmente determinado.
[000255] Quando o elemento de sintaxe é um último elemento de sintaxe na LCU, um segmento de fatia dependente pode ser incluido em uma imagem na qual a LCU é incluida, e a LCU é uma última LCU em um segmento de fatia, o aparelho de decodificação de entropia de video 20 pode armazenar as variáveis de contexto para a LCU. Quando um segmento de fatia dependente pode ser incluida em uma imagem dependentemente de se um segmento de fatia é um segmento de fatia independente ou o segmento de fatia dependente, variáveis de contexto para a LCU podem ser armazenadas.
[000256] Quando vários segmentos de fatia são incluidos em uma imagem, para codificação de entropia para uma variável de contexto de uma primeira LCU de um segmento de fatia dependente que está localizado próximo a um segmento de fatia atual, uma variável de contexto que é armazenada no segmento de fatia atual pode ser usada.
[000257] O aparelho de decodificação de entropia de video 20 pode restaurar os símbolos da LCU mediante uso de um valor de cada elemento de sintaxe.
[000258] Como resultado, o aparelho de decodificação de vídeo 200 pode obter informação sobre uma unidade de codificação que tem um erro de codificação mínimo mediante realização de forma recursiva da codificação em cada LCU durante um processo de codificação e pode usar a informação para decodificar uma imagem atual. Isto é, os dados de imagem codificados das unidades de codificação tendo uma estrutura de árvore determinada como unidades de codificação ótima para cada LCU podem ser decodificados.
[000259] Consequentemente, mesmo quando uma imagem tem uma alta resolução ou uma grande quantidade de dados, os dados de • imagem podem ser decodifiçados eficientemente e restaurados de acordo com o modo de codificação e um tamanho de uma unidade de codificação que são determinados de fora adaptativa de acordo com as características da imagem mediante uso de informação sobre um modo de codificação ótimo que é transmitido a partir de um codificador.
[000260] A Figura 10 é um diagrama para explicar um conceito das unidades de codificação de acordo com uma modalidade exemplar.
[000261] 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.
[000262] Nos dados de vídeo 310, uma resolução é de 1920x1080, um tamanho máximo de uma unidade de codificação é de 64, e uma profundidade máxima é de 2. Nos dados de vídeo 320, uma - resolução é de 1920x1080, um tamanho máximo de codificação é de 64, e uma profundidade máxima é de 3. Nos dados de vídeo 330, uma resolução é de 352x288, um tamanho máximo de uma , unidade de codificação é de 16, e uma profundidade máxima é de 1. A profundidade máxima mostrada na Figura 10 denota um número total de divisões a partir de uma LCU para uma unidade de decodificação mínima.
[000263] Se uma resolução for elevada ou se uma quantidade de dados for grande, um tamanho máximo de uma unidade de codificação pode ser tão grande para não apenas aumentar a eficiência de codificação, mas também refletir de forma exata as características de uma imagem. Consequentemente, o tamanho máximo da unidade de codificação dos dados de video 310 e 320 tendo a resolução mais alta do que os dados de vídeo 330 pode ser de 64.
[000264] Como a profundidade máxima dos dados de video 310 é de 2, as unidades de codificação 315 dos dados de vídeo 310 podem incluir uma LCU tendo um tamanho de eixo longo de 64, e unidades de codificação tendo tamanhos de eixo longos de 32 e 16 uma vez que as profundidades são aprofundadas para duas camadas mediante divisão duas vezes da LCU. Como a profundidade máxima dos dados de vídeo 330 é de 1, as unidades de codificação 335 dos dados de vídeo 330 podem incluir uma LCU tendo um tamanho de eixo longo de 16, e unidades de codificação tendo um tamanho de eixo longo de 8 uma vez que as profundidades são aprofundadas para uma camada mediante divisão uma vez da LCU.
[000265] Como a profundidade máxima dos dados de vídeo 320 é de 3, as unidades de codificação 325 dos dados de vídeo 320 podem incluir uma LCU tendo um tamanho de eixo longo de 64, e unidades de codificação tendo tamanhos de eixo longo de 32, 16 e 8 uma vez que as profundidades são aprofundadas para 3 camadas mediante divisão da LCU três vezes. À medida que a profundidade é aprofundada, informação detalhada pode ser expressa com exatidão.
[000266] A Figura 11 é um diagrama de blocos de um codificador de imagem 400 com base nas unidades de codificação, de acordo com uma modalidade exemplar.
[000267] O codificador de imagem 400 realiza operações do determinador de unidade de codificação 120 do equipamento de codificação de video 100 para codificar os dados de imagem. Em outras palavras, um preditor intra 410 realiza predição intra nas unidades de codificação em um modo intra, dentre uma imagem atual 405, e um estimador de movimento 420 e um compensador de movimento 425 realiza estimação inter e compensação de movimento nas unidades de codificação em um modo inter dentre a imagem atual 405 mediante uso da imagem atual 405, e um quadro de referência 495.
[000268] Os dados emitidos a partir do preditor intra 410, do estimador de movimento 420, e do compensador de movimento 425 são emitidos como um coeficiente de transformação quantizado através do transformador 430 e de um quantizador 440. O coeficiente de transformação quantizado é restaurado como dados em um dominio espacial através de um quantizador inverso 460 e um transformador inverso 470, e os dados restaurados no domínio espacial são emitidos como a imagem de referência 495 após ser pós-processado através de uma unidade de desblocagem 480 (por exemplo, um filtro de desblocagem, etc.) e uma unidade de filtração de laço 490 (por exemplo, um filtro de laço, uma unidade de ajuste de deslocamento, um ajustador de deslocamento, etc.). O coeficiente de transformação quantizado pode ser emitido como um fluxo de bits 455 através de um codificador de entropia 450.
[000269] Para que o codificador de imagem 400 seja aplicado no equipamento de codificação de video 100, todos os elementos do codificador de imagem 400, isto é, o preditor intra 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 desblocagem 480, e a unidade de filtração de laço 490 tem que realiza operações com base em cada unidade de codificação dentre unidades de codificação tendo uma estrutura de árvore enquanto considerando a profundidade máxima de cada LCU.
[000270] Especificamente, o preditor intra 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 dentre as unidades de codificação tendo uma estrutura de árvore enquanto considerando o tamanho máximo e a profundidade máxima de uma LCU atual, e o transformador 430 determina o tamanho da TU em cada unidade de codificação dentre as unidades de codificação tendo uma estrutura de árvore.
[000271] Especificamente, o codificador de entropia 450 pode corresponder ao aparelho de codificação de entropia de video 10 de acordo com uma modalidade exemplar.
[000272] A Figura 12 é um diagrama de blocos de um decodif icador de imagem 500 com base nas unidades de codificação, de acordo com uma modalidade exemplar.
[000273] Um analisador 510 analisa os dados de imagem codificados a serem decodificados e informação sobre a codificação exigida para decodificação a partir de um fluxo de bits 505. Os dados de imagem codificados são emitidos como dados quantizados inversos através de um decodificador de entropia 520 e um quantizador inverso 530, e os dados quantizados inversos são restaurados para dados de imagem em um domínio espacial através de um transformador inverso 540.
[000274] Um preditor intra 550 realiza predição intra nas 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 realiza compensação de movimento nas unidades de codificação em um modo inter, mediante uso de uma imagem de referência 585.
[000275] Os dados de imagem no domínio espacial, os guais passaram através do preditor intra 550 e do compensador de movimento 560, podem ser emitidos como um guadro restaurado 595 após serem pós-processados através de uma unidade de desblocagem 570 (por exemplo, um filtro de desblocagem, etc.) e uma unidade de filtração de laço 580 (por exemplo, um filtro de laço, uma unidade de ajuste de deslocamento, um ajustador de deslocamento, etc.) . Os dados de imagem gue são pós- processados através da unidade de desblocagem 570 e da unidade de filtração de laço 580 podem ser emitidos como o quadro de referência 585.
[000276] 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 realizar operações que são realizadas após o analisador 510.
[000277] Para que o decodificador de imagem 500 seja aplicado no equipamento de decodificação de vídeo 200, todos os elementos do decodificador de imagem 500, isto é, o analisador 510, o decodificador de entropia 520, o quantizador inverso 530, o transformador inverso 540, o preditor intra 550, o compensador de movimento 560, a unidade de desblocagem 570, e a unidade de filtração de laço 580 realizam operações com base nas unidades de codificação tendo uma estrutura de árvore para cada LCU.
[000278] Especificamente, O preditor intra 550 e o compensador de movimento 560 realizam operações com base nas partições e em um modo de predição para cada uma das unidades de codificação tendo uma estrutura de árvore, e o transformador inverso 540 realiza operações com base em um tamanho de uma unidade de transformada para cada unidade de codificação.
[000279] A Figura 13 é um diagrama ilustrando unidades de codificação mais profunda de acordo com as profundidades, e partições, de acordo com uma modalidade exemplar.
[000280] O aparelho de codificação de video 100 de acordo com uma modalidade exemplar e o aparelho de decodificação de video 200 de acordo com uma modalidade exemplar utilizam unidades de codificação hierárquicas para considerar as características de uma imagem. Uma altura máxima, uma largura máxima, e uma profundidade máxima das unidades de codificação podem ser determinadas de forma adaptativa de acordo com as características da imagem, ou podem ser ajustadas de forma diferente por um usuário. Tamanhos de unidades de codificação mais profundas, de acordo com as profundidades, podem ser determinados de acordo com o tamanho máximo predeterminado da unidade de codificação.
[000281] Em uma estrutura hierárquica 600 das unidades de codificação, de acordo com uma modalidade exemplar, a altura máxima e a largura máxima das unidades de codificação são individualmente de 64, e a profundidade máxima é de 4. Nesse caso a profundidade máxima se refere a um número total de vezes que a unidade de codificação é dividida a partir da LCU para a unidade de codificação minima. Como uma profundidade é aprofundada ao longo de um eixo vertical da estrutura hierárquica 600, uma altura e uma largura da unidade de codificação mais profunda são individualmente divididas. Uma unidade de predição e as partições, que são as bases para codificação de predição de cada unidade de codificação mais profunda, são mostradas ao longo de um eixo horizontal da estrutura hierárquica 600.
[000282] Em outras palavras, uma unidade de codificação 610 é uma LCU na estrutura hierárquica 600, em que uma profundidade é de 0 e um tamanho, isto é, uma altura por largura, é de 64x64. A profundidade aumenta ao longo do eixo vertical, e existe 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; e existe uma unidade de codificação 640, tendo um tamanho de 8x8, e uma profundidade de 3, e existe uma unidade de codificação 650 tendo o tamanho de 4x4 e uma profundidade de 4. A unidade de codificação 640 tendo o tamanho de 4x4 e a profundidade de 4 é uma unidade de codificação minima.
[000283] A unidade de predição e as partições de uma unidade de codificação são arranjadas ao longo do eixo 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 incluidas 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.
[000284] 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 incluidas 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.
[000285] 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 incluida 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.
[000286] 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.
[000287] Por último, a unidade de codificação 650 tendo o tamanho de 4x4 e a profundidade de 4 que é uma unidade de codificação mínima é uma unidade de codificação tendo uma profundidade mais baixa, e uma unidade de predição correspondente pode ser atribuída apenas para partições tendo um tamanho de 4x4.
[000288] Para determinar a pelo menos uma profundidade codificada das unidades de codificação constituindo a LCU 610, o determinador de unidade de decodificação 120 do aparelho de codificação de vídeo 10 realiza codificação para as unidades de codificação correspondendo a cada profundidade incluída na LCU 610.
[000289] O número de unidades de codificação mais profunda, de acordo com as profundidades incluindo dados na mesma variação e no mesmo tamanho, aumenta à medida que é aprofundada a profundidade. Por exemplo, quatro unidades de codificação correspondendo a uma profundidade de 2 são exigidas para cobrir os dados que são incluidos em uma unidade de codificação correspondendo a uma profundidade de 1. Consequentemente, para comparar os resultados de codificação dos mesmos dados de acordo com as profundidades, a unidade de codificação correspondendo à profundidade de 1; e quatro unidades de codificação correspondendo à profundidade de 2; têm que ser individualmente codificadas.
[000290] Para executar a codificação para uma profundidade atual entre as profundidades, um erro de codificação minimo pode ser selecionado para a profundidade atual mediante realização de codificação para cada unidade de predição nas unidades de codificação correspondendo à profundidade atual, ao longo do eixo horizontal da estrutura hierárquica 600. Alternativamente, o erro de codificação minimo pode ser pesquisado mediante comparação dos erros de codificação minimos de acordo com as profundidades, mediante realização de codificação para cada profundidade à medida que a profundidade é aprofundada ao longo do eixo vertical da estrutura hierárquica 600. Uma profundidade e uma partição tendo o erro de codificação minimo 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.
[000291] A figura 14 é um diagrama para explicar uma relação entre uma unidade de codificação 710 e as unidades de transformada 720, de acordo com uma modalidade exemplar.
[000292] O aparelho de codificação de video 100 de acordo com uma modalidade exemplar ou o aparelho de decodificação de vídeo 200 de acordo com uma modalidade exemplar codifica ou decodifica uma imagem de acordo com as unidades de codificação tendo tamanhos menores do que ou iguais a uma LCU para cada LCU. Tamanhos de unidades de transformada para transformação durante codificação podem ser selecionados com base nas unidades de dados que não são maiores do que uma unidade de codificação correspondente.
[000293] Por exemplo, no aparelho de codificação de vídeo 100 de acordo com uma modalidade exemplar ou aparelho de decodificação de video 200 de acordo com uma modalidade exemplar, se um tamanho da unidade de codificação 710 é de 64x64, a transformação pode ser realizada mediante uso das unidades de transformada 720 tendo um tamanho de 32x32.
[000294] Os dados da unidade de codificação 710 tendo o tamanho de 64x64 podem ser codificados mediante realização da transformação em cada uma das unidades de transformada tendo o tamanho de 32x32, 16x16, 8x8, e 4x4, que são menores do que 64x64, e então uma unidade de transformada tendo o erro de codificação mínimo pode ser selecionada.
[000295] A figura 15 é um diagrama para explicar informação de codificação das unidades de codificação correspondendo a uma profundidade codificada, de acordo com uma modalidade.
[000296] A unidade de saída 130 do aparelho de codificação de vídeo 100 pode codificar e transmitir informação 800 sobre um tipo de partição, informação 810 sobre um modo de predição, e informação 820 sobre um tamanho de uma unidade de transformada para cada unidade de codificação correspondendo a uma profundidade codificada, como informação sobre um modo de codificação.
[000297] A informação 800 indica informação sobre um formato de uma partição obtida mediante divisão de uma unidade de predição de uma unidade de codificação atual, em que a partição é uma unidade de dados para codificação de predição da unidade de codificação atual. Por exemplo, uma unidade de codificação atual CU_0 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 de 806 tendo um tamanho de Nx2N, e uma partição 808 tendo um tamanho de NxN. Aqui, a informação 800 sobre um tipo de partição é estabelecida 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.
[000298] A informação 810 indica um modo de predição de cada partição. Por exemplo, a informação 810 pode indicar um modo de codificação de predição realizado em uma partição indicada pela informação 800, isto é, um modo intra 812, um modo inter 814, ou um modo de salto 816.
[000299] A informação 820 indica uma unidade de transformada para servir de base quando a transformação é realizada em uma unidade de codificação atual. Por exemplo, a unidade de transformada pode ser uma primeira unidade de transformada intra 822, uma segunda unidade de transformada intra 824, uma primeira unidade de transformada inter 826, ou uma segunda unidade de transformada intra 828.
[000300] O extrator de informação de codificação e dados de imagem 220 do aparelho de decodificação de video 200 pode extrair e usar a informação 800, 810 e 820 para decodificação, de acordo com cada unidade de codificação mais profunda.
[000301] A figura 16 é um diagrama ilustrando unidades de codificação mais profunda de acordo com as profundidades, de acordo com uma modalidade.
[000302] Informação de divisão pode ser usada para indicar uma mudança de uma profundidade. A informação de divisão indica se uma unidade de codificação de uma profundidade atual é dividida em unidades de codificação de uma profundidade inferior.
[000303] Uma unidade de predição 910 para codificação de 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 16 ilustra apenas os tipos de partição 912 a 918 que são obtidos mediante divisão simétrica da unidade de predição 910, porém um tipo de partição não é limitado a isso, 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.
[000304] A codificação de predição é realizada de forma repetida em uma partição tendo um tamanho de 2N_0x2N_0, duas partições 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 de predição em um modo intra e em um modo inter pode ser realizada nas partições tendo os tamanhos de 2N_0x2N_0, N_0x2N_0, 2N_OxN_0 e N_0xN_0. A codificação de predição em um modo de salto é realizada apenas na partição tendo o tamanho de 2N_0x2N_0.
[000305] Se um erro de codificação for o menor em um dos tipos de partição 912 a 916, tendo os tamanhos de 2N_0x2N_0, 2N_0*N_0, and N_0x2N_0, a unidade de predição 910 pode não ser dividida em uma profundidade menor.
[000306] Se o erro de codificação for o menor no tipo de partição 918, uma profundidade é mudada de 0 para 1 para dividir o tipo de partição 918 na operação 920, e a codificação é realizada repetidamente nas unidades de codificação 930 tendo uma profundidade de 2 e um tamanho de N_0xN_0 para procurar um erro de codificação minimo.
[000307] Uma unidade de predição 940 para codificação de predição da unidade de codificação 930 tendo uma profundidade de 1 e um tamanho de 2N_lx2N_l(=N_0xN_0) pode incluir partições de um tipo de partição 942 tendo um tamanho de 2N lx2N_l, um tipo de partição 944 tendo um tamanho de 2N_lxN_l, um tipo de partição 946 tendo um tamanho de N_lx2N_l, e um tipo de partição 948 tendo um tamanho de N_lxN_l.
[000308] Se um erro de codificação for o menor no tipo de partição 948, uma profundidade é mudada de 1 para 2 para dividir o tipo de partição 948 Na operação 950, e a codificação é realizada repetidamente nas unidades de codificação 960, as quais têm uma profundidade de 2 e um tamanho de N_2xN_2 para procurar um erro de codificação minimo.
[000309] Quando uma profundidade máxima é d, a operação de divisão de acordo com cada profundidade pode ser realizada até quando uma profundidade se tornar d-1; e a informação de divisão pode ser codificada até quando uma profundidade for uma de 0 a d-2. Em outras palavras, quando a codificação é realizada até quando a profundidade é d-1 após uma unidade de codificação correspondendo a uma profundidade de d-2 ser dividida na operação 970, uma unidade de predição 990 para codificação de predição de uma unidade de codificação 980 tendo uma profundidade de d-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-l)x2N_(d-l), um tipo de partição 994 tendo um tamanho de 2N_(d-l)xN_(d-l), um tipo de partição 996 tendo um tamanho de N_(d-1)x2N_(d-l), um tipo de partição 998 tendo um tamanho de N_(d-1)xN_(d-1).
[000310] Codificação de predição pode ser realizada repetidamente em uma partição tendo um tamanho de 2N__(d- l)x2N_(d-l), 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) dentre os tipos de partição 992 a 998 para procurar um tipo de partição tendo um erro de codificação mínimo.
[000311] Mesmo quando o tipo de partição 998 tem o erro de codificação mínimo, como uma profundidade máxima é d, uma unidade de codificação CU_(d-l) , tendo uma profundidade de d-1 não mais é dividida para uma profundidade inferior, e uma profundidade codificada para as unidades de codificação constituindo uma LCU atual 900 é determinada para ser d-1 e um tipo de partição da LCU atual 900 pode ser determinada para ser N_ (d-1) xN_ (d-1) . Como a profundidade máxima é d e uma unidade de codificação mínima 980 tendo a profundidade mais baixa de d-1 não mais é dividida para uma profundidade inferior, a informação de divisão para a unidade de codificação mínima 980 não é estabelecida.
[000312] A unidade de dados 999 pode ser uma 'unidade mínima' para a LCU atual. Uma unidade mínima de acordo com uma modalidade exemplar pode ser uma unidade de dados retangular obtida mediante divisão de uma unidade de codificação minima 980 por 4. Mediante realização da codificação repetidamente, o equipamento de codificação de video 100 pode selecionar uma profundidade tendo o erro de codificação minimo mediante comparação dos erros de codificação de acordo com as profundidades da unidade de codificação 900 para determinar uma profundidade codificada, e estabelecer um tipo de partição correspondente e um modo de predição como um modo de codificação da profundidade codificada.
[000313] Como tal, os erros de codificação mínimos de acordo com as profundidades são comparados em todas as profundidades de 1 a d, e a profundidade tendo o menor erro de codificação 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ção sobre um modo de codificação. Como uma unidade de codificação é dividida a partir de uma profundidade de 0 até uma profundidade codificada, apenas a informação de divisão da profundidade codificada é ajustada para 0, e a informação de divisão das profundidades excluindo a profundidade codificada é ajustada para 1.
[000314] O extrator de informação de codificação e dados de imagem 220 do aparelho de decodificação de video 200 pode extrair e usar a informação 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 video 200 pode determinar uma profundidade, na qual a informação dividida é 0, como uma profundidade codificada mediante uso da informação dividida de acordo com as profundidades, e usar a informação sobre um modo de codificação da profundidade correspondente para decodificação.
[000315] As figuras 17 a 19 são diagramas para descrever uma relação entre as unidades de codificação 1010, unidades de predição 1060, e TUs 1070, de acordo com uma modalidade.
[000316] As unidades de codificação 1010 são unidades de codificação que têm uma estrutura de árvore, correspondendo às profundidades codificadas determinadas pelo aparelho de codificação de video 100, em uma LCU. As unidades de predição 1060 são partições das unidades de predição de cada uma das unidades de codificação 1010, e as TUs 1070 são TUs de cada uma das unidades de codificação 1010.
[000317] Quando uma profundidade de uma LCU é 0 nas unidades de codificação 1010, as profundidades das unidades de codificação 1012 e 1054 são 1, as profundidades das unidades de codificação 1014, 1016, 1018, 1028, 1050, e 1052 são 2, as profundidades das unidades de decodificação 1020, 1022, 1024, 1026, 1030, 1032 e 1048 são 3, e as profundidades das unidades de codificação 1040, 1042, 1044 e 1046 são 4.
[000318] Nas unidades de predição 1060, algumas unidades de codificação 1014, 1016, 1022, 1032, 1048, 1050, 1052, 1054 são obtidas mediante divisão das unidades de codificação nas unidades de codificação 1010. Em outras palavras, tipos de partição nas unidades de codificação 1014, 1022, 1050, e 1054 têm um tamanho de 2NxN, os 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. As 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.
[000319] Transformada ou transformada inversa é realizada nos dados de imagem da unidade de codificação 1052 nas TUs 1070 em uma unidade de dados que é menor do que a unidade de codificação 1052. As unidades de codificação 1014, 1016, 1022, 1032, 1048, 1050 e 1052 nas TUs 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 video 100 e 200 podem realizar predição intra, estimação de movimento, compensação de movimento, transformada, e transformada inversa individualmente em uma unidade de dados na mesma unidade de codificação.
[000320] Consequentemente, a codificação é realizada de forma recursiva em cada uma das unidades de codificação tendo uma estrutura hierárquica em cada região de uma LCU para determinar uma unidade de codificação ótima, e assim unidades de codificação que têm uma estrutura de árvore recursiva podem ser obtidas. A informação de codificação pode incluir informação dividida sobre uma unidade de codificação, informação sobre um tipo de partição, informação sobre um modo de predição, e informação sobre um tamanho de uma TU. A Tabela 1 mostra a informação de codificação que pode ser estabelecida pelo aparelho de codificação de video 100 de acordo com uma modalidade exemplar e pelo aparelho de decodificação de vídeo 200 de acordo com uma modalidade exemplar. Tabela 1
Figure img0001
[000321] A unidade de saida 130 do aparelho de codificação de video 100 de acordo com uma modalidade exemplar pode emitir a informação de codificação sobre as unidades de codificação tendo uma estrutura de árvore, e o extrator de informação de codificação e dados de imagem 220, do aparelho de decodificação de video 200 de acordo com uma modalidade exemplar, pode extrair a informação de codificação sobre as unidades de codificação tendo uma estrutura de árvore a partir de um fluxo de bits recebido.
[000322] A informação de divisão indica se uma unidade de codificação atual é dividida em unidades de codificação de uma profundidade inferior. Se a informação dividida de uma profundidade atual d for 0, uma profundidade, na qual uma unidade de codificação atual não mais é dividida em uma profundidade inferior, é uma profundidade codificada, e assim a informação sobre um tipo de partição, o modo de predição, e um tamanho de uma TU, pode ser definida para a profundidade codificada. Se a unidade de codificação atual for dividida adicionalmente de acordo com a informação dividida, a codificação é realizada independentemente em quatro unidades de codificação divididas de uma profundidade inferior.
[000323] Um modo de predição pode ser um de: um modo intra, um modo inter, e um modo de salto. 0 modo intra e o modo inter podem ser definidos em todos os tipos de partição, e o modo de salto é definido apenas em um tipo de partição tendo um tamanho de 2Nx2N.
[000324] A informação sobre o tipo de partição pode indicar tipos de partição simétrica tendo tamanhos de 2Nx2N, 2NxN, Nx2N, e NxN, que são obtidos mediante divisão de forma simétrica de uma altura ou de uma largura de uma unidade de predição, e tipos de partição assimétrica tendo tamanhos de 2NxnU, 2NxnD, nLx2N e nRx2N, os quais são obtidos mediante divisão de forma assimétrica da altura ou largura da unidade de predição. Os tipos de partição assimétrica tendo os tamanhos de 2NxnU e 2NxnD podem ser obtidos respectivamente mediante divisão da 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 obtidos respectivamente mediante divisão da largura da unidade de predição em 1:3 e 3:1.
[000325] O tamanho da unidade de transformada pode ser ajustado para ser de dois tipos no modo intra e de dois tipos no modo inter. Em outras palavras, se a informação dividida da unidade de transformada for 0, o tamanho da unidade de transformada pode ser 2Nx2N, que é o tamanho da unidade de codificação atual. Se informação dividida da unidade de transformada for 1, as TUs podem ser obtidas mediante divisão da unidade de codificação atual. Adicionalmente, se um tipo de divisão da unidade de codificação atual tendo o tamanho de 2Nx2N for um tipo de partição assimétrica, um tamanho de uma unidade de transformada 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 TU pode ser N/2xN/2.
[000326] A informação de codificação sobre as unidades de codificação tendo uma estrutura de árvore de acordo com uma modalidade exemplar pode incluir ao menos uma de uma unidade de codificação correspondendo a uma profundidade codificada, uma unidade de predição, e uma unidade minima. A unidade de codificação correspondendo à profundidade codificada pode incluir ao menos uma de uma unidade de predição e uma unidade minima contendo a mesma informação de codificação.
[000327] Consequentemente é determinado se as unidades de dados adjacentes são incluídas na mesma unidade de codificação correspondendo à profundidade codificada mediante comparação da informação de codificação das unidades de dados adjacentes. Uma unidade de codificação correspondente que corresponde a uma profundidade codificada é determinada mediante uso da informação de codificação de uma unidade de dados, e assim uma distribuição das profundidades codificadas em uma LCU pode ser determinada.
[000328] Consequentemente, se uma unidade de codificação atual for predita com base na informação de codificação das unidades de dados adjacentes, informação de codificação das unidades de dados em unidades de codificação mais profunda adjacentes à unidade de codificação atual pode ser diretamente consultada e utilizada.
[000329] Alternativamente, se uma unidade de codificação atual for predita com base na informação de codificação das unidades de dados adjacentes, as unidades de dados adjacentes à unidade de codificação atual são procuradas utilizando-se a informação de codificação das unidades de dados, e as unidades de codificação adjacentes procuradas podem ser referidas para predição da unidade de codificação atual.
[000330] A Figura 20 é 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 transformada, de acordo com a informação de modo de codificação da Tabela 1.
[000331] Uma LCU 1300 inclui unidades de codificação 1302 1304, 1306, 1312, 1314, 1316 e 1318 de profundidades codificadas. Aqui, como a unidade de codificação 1318 é uma unidade de codificação de uma profundidade codificada, a informação dividida pode ser ajustada para 0. A informação sobre um tipo de partição da unidade de codificação 1318 tendo um tamanho de 2Nx2N pode ser ajustada 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 328 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.
[000332] Informação de divisão (indicador de tamanho TU (Unidade de transformação)) de uma unidade de transformação, é um tipo de um índice de transformação. 0 tamanho de uma unidade de transformação correspondendo ao índice de transformação pode variar de acordo com um tipo de unidade de predição ou um tipo de partição de uma unidade de codificação.
[000333] Por exemplo, quando o tipo de partição é ajustado 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 é estabelecida quando o sinalizador de tamanho TU é 0, e uma unidade de transformação 1344 tendo um tamanho de NxN é estabelecida quando o sinalizador de tamanho TU é 1.
[000334] Quando o tipo de partição é estabelecido como sendo assimétrico, isto é, o tipo de partição 1332, 1334, 1336 ou 1338, uma unidade de transformação 1352 tendo um tamanho de 2Nx2N é estabelecida se um sinalizador de tamanho TU for 0, e uma unidade de transformação 1354 tendo um tamanho de N/2xN/2 é estabelecida se um sinalizador de tamanho TU for 1.
[000335] Com referência à Figura 20, o sinalizador de tamanho TU é um sinalizador tendo um valor de 0 ou 1, porém o sinalizador de tamanho TU não é limitado a um 1 bit, e a unidade de transformação pode ser dividida de forma hierárquica tendo uma estrutura de árvore enquanto o sinalizador de tamanho TU aumenta a partir de 0. A informação de divisão (sinalizador de tamanho TU) de uma unidade de transformação pode ser um exemplo de um índice de transformação.
[000336] Nesse caso, o tamanho de uma unidade de transformação que foi efetivamente usada pode ser expresso mediante uso de um indicador de tamanho TU de uma unidade de transformação, de acordo com uma modalidade exemplar, em conjunto com um tamanho máximo e um tamanho minimo da unidade de transformação. De acordo com uma modalidade exemplar, o equipamento de codificação de video 100 pode codificar informação de tamanho de unidade de transformação máximo, informação de tamanho de unidade de transformação minimo, e um indicador de tamanho TU máximo. 0 resultado da codificação da informação de tamanho de unidade de transformação máximo, informação de tamanho de unidade de transformação mínimo, e o indicador de tamanho TU máximo podem ser inseridos em um SPS. De acordo com uma modalidade exemplar, o equipamento de codificação de vídeo 200 pode decodificar vídeo mediante uso da informação de tamanho de unidade de transformação máximo, da informação de tamanho de unidade de transformação mínima, e do indicador de tamanho TU máximo.
[000337] Por exemplo, (a) se o tamanho de uma unidade de codificação atual for 64x64 e um tamanho de unidade de transformação máximo for 32x32, (a-1) então o tamanho de uma unidade de transformação pode ser 32x32 quando um indicador de tamanho TU é 0, (a—2) pode ser 16x16 quando o indicador de tamanho TU for 1, e (a-3) pode ser 8x8 quando o indicador de tamanho TU for 2.
[000338] Como outro exemplo, (b) se o tamanho da unidade de codificação atual for 32x32 e um tamanho de unidade de transformação mínimo for 32x32, (b-1) então o tamanho da unidade de transformação pode ser 32x32 quando o indicador de tamanho TU for 0. Aqui, o indicador de tamanho TU não pode ser ajustado para um valor diferente de 0, uma vez que o tamanho da unidade de transformação não pode ser menor do que 32x32.
[000339] Como outro exemplo, (c) se o tamanho da unidade de codificação atual for 64x64 e um indicador de tamanho TU máximo for 1, então o indicador de tamanho TU pode ser 0 ou 1. Aqui, o indicador de tamanho TU não pode ser ajustado para um valor diferente de 0 ou 1.
[000340] Assim, se for definido que o indicador de tamanho TU máximo é "MaxTransformSizelndex", um tamanho de unidade de transformação minimo é "MinTransformSize", e um tamanho de unidade de transformação é "RootTuSize" quando o indicador de tamanho TU for 0, então um tamanho de unidade de transformação minimo atual "CurrMinTuSize" que pode ser determinado em uma unidade de codificação atual, pode ser definido pela Equação (D : CurrMinTuSize=max(MinTransformSize, RootTuSize/ (2AMaxTransformSizelndex)) ....(1)
[000341] Em comparação com o tamanho de unidade de transformação minimo atual "CurrMinTuSize" que pode ser determinado na unidade de codificação atual, um tamanho de unidade de transformação "RootTuSize" quando o indicador de tamanho TU é 0, pode denotar um tamanho de unidade de transformação máximo que pode ser selecionado no sistema. Na Equação (1), "RootTuSize(2AMaxTransformSizeIndex)" denota um tamanho de unidade de transformação quando o tamanho de unidade de transformação "RootTuSize", quando o indicador de tamanho TU for 0, é dividido o número de vezes correspondendo ao indicador de tamanho TU máximo, e "MintransformSize" denota um tamanho de transformação minimo. Assim, um valor menor dentre "RootTuSize/(2AMaxTransformSizeIndex)" e "MinTransformSize" pode ser o tamanho de unidade de transformação minimo atual "CurrMinTuSize" que pode ser determinado na unidade de codificação atual.
[000342] De acordo com uma modalidade de acordo com a presente invenção, o tamanho de unidade de transformação máximo RootTuSize pode variar de acordo com o tipo de modo de predição.
[000343] Por exemplo, se um modo de predição atual for um modo inter, então RootTuSize pode ser determinado mediante uso da Equação (2) abaixo. Na Equação (2), "MaxTransformSize" denota um tamanho de unidade de transformação máximo, e "PUSize" denota um tamanho de unidade de predição atual. RootTuSize = min(MaxTransformSize, PUSize) (2)
[000344] Isto é, se o modo de predição atual for o modo inter, o tamanho de unidade de transformação "RootTuSize" quando o indicador de tamanho TU for 0, pode ser um valor menor entre o tamanho de unidade de transformação máximo e o tamanho de unidade de predição atual.
[000345] Se um modo de predição de uma unidade de partição atual for um modo intra, "RootTuSize" pode ser determinado mediante uso da Equação (3) abaixo. Na Equação (3), "Partitionsize" denota o tamanho da unidade de partição atual. RootTuSize = min(MaxTransformSize, Partitionsize)..(3)
[000346] Isto é, se o modo de predição atual for o modo intra, o tamanho de unidade de transformação "RootTuSize" quando o indicador de tamanho TU for 0 pode ser um valor menor entre o tamanho de unidade de transformação máximo e o tamanho da unidade de partição atual.
[000347] Contudo, o tamanho de unidade de transformação máximo atual "RootTuSize" que varia de acordo com o tipo de um modo de predição em uma unidade de partição, é apenas um exemplo, e uma modalidade exemplar não é limitada a ele.
[000348] De acordo com o método de codificação de video baseado em unidades de codificação tendo uma estrutura em árvore, como descrito com referência às figuras 8 a 20, os dados de imagem de uma região espacial são codificados para cada unidade de codificação de uma estrutura de árvore. De acordo com o método de decodificação de video baseado em unidades de codificação que têm uma estrutura de árvore, a decodif icação é executada para cada LCU para restaurar dados de imagem de uma região espacial. Assim, uma imagem e um vídeo que é uma sequência de imagens podem ser restaurados. 0 vídeo restaurado pode ser reproduzido por um dispositivo de reprodução, armazenado em um meio de armazenamento, ou transmitido através de uma rede.
[000349] As modalidades exemplares podem ser gravadas como programas de computador e podem ser implementadas em computadores digitais de uso comum que executam programas utilizando um meio de gravação legível por computador. Exemplos do meio de gravação legível por computador incluem meios de armazenamento magnético (por exemplo, ROM, disquetes, discos rígidos, etc.) e meios óticos de gravação (por exemplo, CD-ROMs ou DVDs).
[000350] Para conveniência de explanação, o método de codificação de vídeo envolvendo o método de codificação de entropia descrito com referência às Figuras IA a 20, será referido coletivamente como um "método de codificação de vídeo de acordo com a modalidade exemplar". Além disso, o método de codificação de vídeo envolvendo o método de decodificação de entropia descrito com referência às Figuras IA a 20 será referido coletivamente como um "método de decodificação de video de acordo com a modalidade exemplar".
[000351] O aparelho de codificação de video 100 incluindo o aparelho de codificação de entropia 10 e o aparelho de codificação de vídeo incluindo codificador de imagem 400 com descrito com referência às Figuras 1A a 20 será referido como um "aparelho de codificação de vídeo de acordo com uma modalidade exemplar". Além disso, o aparelho de decodificação de vídeo 200 incluindo o aparelho de decodificação de entropia 20 e o decodificador de imagem 500 descrito com referência às Figuras IA a 20 será referido como um "aparelho de decodificação de vídeo de acordo com uma modalidade exemplar".
[000352] Um meio de gravação legível por computador armazenando um programa, por exemplo, um disco 26000, de acordo com uma modalidade exemplar será agora descrito em detalhe.
[000353] Figura 21 é um diagrama ilustrando uma estrutura física de um disco 26000 que armazena um programa, de acordo com uma modalidade exemplar. O disco 26000, que é um meio de armazenamento pode ser um disco rígido, um disco de memória (CD-ROM) de leitura de discos compactos, um disco Blu-ray, ou um disco digital versátil (DVD). 0 disco 26000 inclui uma pluralidade de faixas concêntricas Tr sendo cada uma delas dividida em certo número de sectores Se, em uma direção periférica do disco 26000. Em uma região específica do disco 26000, um programa que executa um método de predizer vídeo de múltiplas visualizações, um método de restauração por predição de vídeo de múltiplas visualizações, um método de codificação vídeo de múltiplas visualizações, e um método de decodificação de vídeo de múltiplas visualizações como descrito acima, pode ser atribuídos e armazenados.
[000354] Um sistema de computador incorporado usando um meio de armazenamento que armazena um programa para a execução de um método de codificação de video e de um método de decodificação video tal como descrito acima será agora descrito com referência à figura 22.
[000355] Figura 22 ilustra uma unidade de disco 26800 que registra e lê um programa usando um disco 26000. Um sistema de computador 26700 pode armazenar programa que executa pelo menos um de um método de codificação de video e de um método de decodificação video de acordo com uma modalidade exemplar, em um disco 26000 por meio da unidade de disco 26800. Para executar o programa armazenado no disco 26000 no sistema de computador 26700, o programa pode ser lido a partir do disco 26000 e ser transmitido para o sistema de computador 26700 usando a unidade de disco 26800.
[000356] O programa que executa pelo menos um de um método de codificação de video e de um método de decodificação video de acordo com uma modalidade exemplar pode ser armazenado, não só no disco 26000 ilustrado na figura 21 ou 22, mas também em um cartão de memória, um cassete ROM ou uma unidade de estado sólido (SSD).
[000357] Um sistema ao qual o método de codificação de video, e um método de decodificação video, descritos acima, são aplicados, será descrito abaixo.
[000358] Figura 23 ilustra toda uma estrutura de um sistema de fornecimento de conteúdo 11000 que fornece 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 as estações de base sem fio 11700, 11800, 11900, e 12000 são instaladas nessas células, respectivamente.
[000359] O sistema de fornecimento de conteúdo 11000 inclui uma pluralidade de dispositivos independentes. Por exemplo, os vários dispositivos independentes, como um computador 12100, um assistente digital pessoal (PDA)1220, uma câmera de vídeo 12300, e um telefone celular 12500, estão ligados à Internet 1110 através de um provedor de serviços de internet 1120, uma rede de comunicação 11400, e as estações de base sem fio 11700, 11800, 11900, e 12000.
[000360] Contudo, o sistema de fornecimento de conteúdos 11000 não se limita àquele ilustrado na figura 24, e os dispositivos podem ser seletivamente conectados ao mesmo. Os vários dispositivos independentes podem estar diretamente ligados à rede de comunicações 11400, em vez de através das estações de base sem fio 11700, 11800, 11900, e 12000.
[000361] A câmera de vídeo 12300 é um dispositivo de formação de imagem, por exemplo, uma câmera de vídeo digital, que é capaz de capturar imagens de vídeo. O telefone móvel 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 Pessoal Handyphone (PHS).
[000362] A câmara de vídeo 12300 pode ser conectada a um servidor de fluxo contínuo 11300 através da estação de base sem fios 11900 e da rede de comunicações 11400. O servidor de fluxo contínuo 11300 permite que o conteúdo recebido de um usuário através da câmera de vídeo 12300 de fluxo contínuo seja transmitido através de uma transmissão em tempo real. 0 conteúdo recebido da câmera de vídeo 12300 pode ser codificado usando a câmera de video 12300 ou o servidor de fluxo continuo 11300. Os dados de video captados pela câmera de video 12300 podem ser transmitidos para o servidor de fluxo continuo 11300 através do computador 12100.
[000363] Os dados de video captados por uma câmara de 12300 também podem ser transmitidos para o servidor de fluxo continuo 11300 através do computador 12100. A câmera 12600 é um dispositivo de imagem capaz de capturar imagens estáticas e imagens de video, semelhante a uma câmera digital. Os dados de video captados pela câmera 12600 podem ser codificados usando a câmera 12600 ou o computador 12100. O software que codifica e decodifica video pode ser armazenado em um meio de gravação legivel por computador, por exemplo, um disco de CD-ROM, uma disquete, uma unidade de disco rigido, um SSD, ou um cartão de memória, que pode ser acessado pelo computador 12100.
[000364] Se os dados de video são captados por uma câmera embutida no telefone móvel 12500, os dados de video podem ser recebidos a partir do telefone móvel 12500.
[000365] Os dados de video também podem ser codificados por um sistema de circuito integrado de grande escala (LSI) instalado na câmera de video 12300, no telefone móvel 12500, ou na câmera 12600.
[000366] O sistema de fornecimento de conteúdo 11000 pode codificar os dados do conteúdo gravados por um usuário utilizando a câmara de video 12300, a câmara 12600, o telefone móvel 12500, ou outro dispositivo de imagem, por exemplo, o conteúdo gravado durante um concerto, e transmitir os dados codificados de conteúdo para o servidor de fluxo continuo 11300. 0 servidor de fluxo continuo 11300 pode transmitir em fluxo continuo os dados codificados de conteúdo para outros clientes que solicitarem os dados de conteúdo.
[000367] Os clientes são dispositivos capazes de decodificar os dados de conteúdo codificado, por exemplo, o computador 12100, o PDA 1220, a câmera de video 12300, ou o telefone móvel 12500. O sistema de fornecimento de conteúdo 11000 permite que os clientes recebam e reproduzam os dados codificados de conteúdo. 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 codificados em tempo real, permitindo assim a transmissão pessoal.
[000368] As operações de codificação e decodificação da pluralidade de dispositivos independentes incluidos no sistema de alimentação de conteúdos 11000 podem ser semelhantes às de um aparelho de codificação de video e de um aparelho de decodificação video de acordo com uma modalidade exemplar.
[000369] O telefone móvel 12500 incluido no sistema de fornecimento de conteúdo 11000 de acordo com uma modalidade exemplar será agora descrito em maior detalhe com referência às figuras 24 e 25.
[000370] A figura 24 ilustra uma estrutura externa de um telefone móvel 12500 a qual um método de codificação de video e um método de decodificação de video são aplicados, de acordo com uma modalidade exemplar. 0 telefone móvel 12500 pode ser um telefone inteligente, cujas funções não são limitadas e uma grande parte das funções pode ser alterada ou expandida.
[000371] O telefone móvel 12500 inclui uma antena interna 12510, através do qual um sinal de radiofrequência (RF) pode ser trocado com a estação de base sem fio 12000 da figura 26, e inclui uma tela 12520 para a exibição de imagens captadas por uma câmera 12530 ou imagens que são recebidas através da antena 12510 e decodificadas, por exemplo, um display de cristal liquido (LCD) ou uma tela de diodos emissores de luz orgânica (OLED). O telefone inteligente 12510 inclui um painel de operação 12540, incluindo um botão de controle e um painel sensivel ao toque. Se a tela de exibição 12520 é uma tela sensivel ao toque, o painel de operação 12540 inclui ainda um painel de detecção de toque da tela de exibição 12520. O telefone inteligente 12510 inclui um alto-falante para a saida de voz e som ou outro tipo de unidade de saida de som e um microfone 12550 para introduzir voz e som ou outro tipo de unidade de entrada de som. O telefone inteligente 12510 inclui ainda a câmera 12530, como um dispositivo de carga acoplada (CCD) da câmera, para capturar video e imagens estáticas. O telefone inteligente 12510 pode ainda incluir um meio de armazenamento 12570 para armazenar dados codificados/decodifiçados, por exemplo, video ou ainda imagens captadas pela câmara de 12530, recebidas por e-mail, ou obtidas de acordo com outro método, e uma fenda 1256 através da qual o meio de armazenamento 12570 é carregado no telefone móvel 12500. O meio de armazenamento 12570 pode ser uma memória flash, por exemplo, um cartão digital seguro (SD) ou uma memória de leitura programável eletricamente apagável (EEPROM) incluida em um estojo de plástico.
[000372] Figura 25 é um diagrama ilustrando uma estrutura interna do telefone móvel 12500, de acordo com uma modalidade da presente invenção. Para sistemicamente controlar as peças do telefone móvel 12500, incluindo a tela de exibição 12520 e o painel de operação 12540, um circuito de alimentação 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 de LCD 12620, uma unidade de decodificação de imagem 12690, um multiplexador/demultiplexador 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 por meio de um barramento de sincronização 12730.
[000373] Se um usuário operar um botão de energia e mudar de um 'estado de desligado' para uma 'estado de ligado', o circuito de fornecimento de energia 12700 fornece energia para todas as partes do telefone móvel 12500 a partir de um módulo de bateria, colocando, assim, o telefone móvel 12500 em um modo de operação.
[000374] O controlador central 12710 inclui uma unidade central de processamento (CPU) , uma ROM, e uma memória de acesso aleatório (RAM).
[000375] Embora o telefone móvel 12500 transmita dados de comunicação para o lado de fora, um sinal digital é gerado no telefone móvel 12500 sob o controle do controlador central. 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 os dados de texto de uma mensagem podem ser gerados através do painel de operação 12540 e do controlador de entrada de operação de 12640. Quando o sinal digital é fornecido à unidade de modulação/demodulação 12660 sob controle do controlador central 12710, a unidade de modulação/demodulação 12660 executa a modulação em uma banda de frequência do sinal digital, e um circuito de comunicação 12610 realiza conversão digital/analógico (DAG) e conversão de frequência no sinal digital com modulação de banda de frequência. Uma saida de sinal de transmissão a partir do circuito de comunicação 12610 pode ser transmitida para uma estação de base de comunicação de voz ou a estação de base sem fio 12000 através da antena 12510.
[000376] Por exemplo, quando o telefone móvel 12500 está em um modo de conversação, um sinal de som. obtido através do microfone 12550 é transformado em um sinal de som digital pelo processador de som 12650, sob o 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 do circuito de comunicação 12610, e pode ser transmitido através da antena 12510.
[000377] Quando uma mensagem de texto, por exemplo, e-mail, é transmitido em um modo de comunicação de dados, dados de texto da mensagem de texto são inseridos 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 o 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 do circuito de comunicação 12610 e são transmitidos para a estação de base sem fio 12000 através da antena 12510.
[000378] Para transmitir os dados de imagem no modo de comunicação de dados, os dados de imagem captados pela câmara 12530 são fornecidos para a unidade de codificação de imagem 12720 por meio da interface de câmara 12630. Os dados de imagens captados podem ser exibidos diretamente na tela de exibição 12520 por meio da interface da câmera 12630 e do controlador de LCD 12620.
[000379] Uma estrutura da unidade de codificação de imagem 12720 pode corresponder a do aparelho de codificação de video 100, acima descrito. A unidade de codificação de imagem 12720 pode transformar os dados de imagem recebidos a partir da câmara 12530 em dados de imagem codificados por compactação de acordo com um método de codificação de video empregado pelo aparelho de codificação de video 100 ou pelo codificador de imagem 400 descrito acima, e, então, emitir os dados de imagem codificados para o multiplexador/demultiplexador 12680. Durante uma operação de gravação da câmara 12530, um sinal de som obtido pelo microfone 12550 do telefone móvel 12500 pode ser transformado em dados digitais de som através do processador de som 12650, e os dados digitais de som podem ser fornecidos ao multiplexador/demultiplexador 12680.
[000380] O multiplexador/demultiplexador 12680 multiplexa os dados de imagem codificados recebidos a partir da unidade de codificação de imagem 12720, em conjunto com os dados de som recebidos do processador de som 12650. Um resultado de multiplexação dos dados pode ser transformado em um sinal de transmissão através da unidade de modulação/demodulação 12660 e do circuito de comunicação de 12610, e pode ser transmitido através da antena 12510.
[000381] Embora o telefone móvel 12500 receba dados de comunicação a partir do exterior, a recuperação de frequência e de ADC é realizada 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 banda do sinal digital de frequência. O sinal digital modulado de faixa de frequências é transmitido para a unidade de decodificação de video 12690, processador de som 12650, ou controlador de LCD 12620, de acordo com o tipo de sinal digital.
[000382] No modo de conversação, o telefone móvel 12500 amplifica um sinal recebido através da antena 12510, e obtém um sinal de som digital através da realização de 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 do processador de som 12650, e o sinal de som analógico é emitido através do alto-falante 12580, sob o controle do controlador central 12710.
[000383] Quando no modo de comunicação de dados, os dados de um arquivo de video acessado através de um sitio da Internet são recebidos, um sinal recebido a partir da estação de 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 multiplexador/demultiplexador 12680.
[000384] Para decodificar os dados multiplexados recebidos através da antena 12510, o multiplexador/demultiplexador 12680 demultiplexa os dados multiplexados em um fluxo codificado de dados de video e em um fluxo de dados de áudio codificado. Através do barramento de sincronização 12730, o fluxo codificado de dados de video e os dados de áudio codificados são fornecidos à unidade de decodificação de video 12690 e ao processador de som 12650, respectivamente.
[000385] Uma estrutura da unidade de decodificação de imagem 12690 pode corresponder à do aparelho de decodificação de video 200 de acordo com uma modalidade exemplar. A unidade de decodificação de imagem 12690 pode decodificar os dados de video codificados para obter dados de video restaurados e fornecer os dados de video restaurados para a tela de exibição 12520, através do controlador de LCD 12620, de acordo com o método de decodificação de video empregado pelo aparelho de decodificação de acordo com uma modalidade exemplar.
[000386] Assim, os dados do arquivo de video acessados através do site da Internet podem ser exibidos na tela de exibição 12520. Ao mesmo tempo, o processador de som 12650 pode transformar os dados de áudio em um sinal de som analógico e fornecer o sinal de som analógico ao alto-falante 12580. Assim, os dados de áudio contidos no arquivo de video acessada através do site da Internet também podem ser reproduzidos através do alto-falante 12580.
[000387] O telefone móvel 12500 ou outro tipo de terminal de comunicação pode ser um terminal de transmissão e recepção, incluindo tanto um aparelho de codificação de video e um aparelho de decodificação video de acordo com uma modalidade exemplar, pode ser um terminal de transmissão e recepção, incluindo apenas o aparelho de codificação de video de acordo com uma modalidade exemplar, ou pode ser um terminal transmissão/recepção incluindo apenas o aparelho de decodificação de video de acordo com uma modalidade exemplar.
[000388] Um sistema de comunicações de acordo com uma modalidade exemplar não é limitado ao sistema de comunicações acima descrito com referência à figura 24 . Por exemplo, a figura 26 ilustra um sistema de radiodifusão digital que emprega um sistema de comunicação, de acordo com uma modalidade exemplar. 0 sistema de transmissão digital da figura 26 pode receber uma transmissão digital transmitida através de um satélite ou por uma rede terrestre, utilizando um aparelho de codificação de vídeo e um aparelho de decodificação video de acordo com uma modalidade exemplar.
[000389] Especificamente, uma estação de radiodifusão 12890 transmite um fluxo de dados de vídeo para um satélite de comunicação ou um satélite de radiodifusão 12900 usando ondas eletrônicas. A transmissão por satélite 12900 transmite um sinal de transmissão, e o sinal de transmissão é transmitido para um receptor de transmissão por satélite por meio de uma antena doméstica 12860. Em cada casa, um fluxo de vídeo codificado pode ser decodificado e reproduzido por um receptor de TV 12810, um aparelho de conversão de sinais de frequência 12870, ou outro dispositivo.
[000390] Quando um aparelho de decodificação vídeo de acordo com uma modalidade exemplar é 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 armazenamento 12820, tal como um disco ou um cartão de memória, para restaurar o sinal de vídeo original. Assim, o sinal de vídeo restaurado pode ser reproduzido, por exemplo, em um monitor 12840.
[000391] No conversor de sinais de frequência 12870 conectado à antena 12860 para uma difusão por satélite/terrestre ou uma antena a cabo 12850 para receber transmissão de televisão (TV) a cabo, um aparelho de decodificação vídeo de acordo com uma modalidade exemplar pode ser instalado. A saída de dados a partir de conversor de sinais de frequência 12870 também pode ser reproduzida em um monitor de TV 12880.
[000392] Como outro exemplo, um aparelho de decodificação video de acordo com a presente invenção pode ser instalado no receptor de TV 12810 em vez do conversor de sinais de frequência 12870.
[000393] Um automóvel 12920, incluindo uma antena 12910 apropriada pode receber um sinal transmitido a partir do satélite 12900 ou da estação de base sem fio 11700, da figura 26. Um video 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.
[000394] Um sinal de video pode ser codificado por um aparelho de codificação de video de acordo com uma modalidade exemplar e pode posteriormente ser armazenado em um meio de armazenamento. Especificamente, um sinal de imagem pode ser armazenado em um disco DVD 12960 por um gravador de DVD, ou pode ser armazenado em um disco rigido de um gravador de disco rigido 12950. Como outro exemplo, o sinal de video pode ser armazenado em um cartão SD 12970. Se o gravador de disco rigido 12950 inclui um aparelho de decodificação vídeo de acordo com uma modalidade exemplar, um sinal de vídeo gravado no disco DVD 12960, no cartão SD 12970, ou em outro meio de armazenamento pode ser reproduzido no monitor de TV 12880.
[000395] O sistema de navegação de automóvel 12930 pode não incluir a câmara 12530, a interface da câmara 12630, e a unidade de codificação de imagem 12720 da figura 26. Por exemplo, o computador 12100 e o receptor de TV 12810 podem não ser incluídos na câmara 12530, na interface da câmara 12630, e na unidade de codificação de imagem 12720, da figura 26.
[000396] A figura 27 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 exemplar.
[000397] O sistema de computação de nuvem pode incluir um servidor de computação de nuvem 14100, um banco de dados de usuário (DB) 14100, uma pluralidade de recursos de computação 14200, e um terminal de usuário.
[000398] O sistema de computação em nuvem oferece um serviço sob demanda terceirizado da pluralidade de recursos de computação 14200 por meio de uma rede de informação de comunicação, por exemplo, a Internet, em resposta a um pedido do terminal de usuário. Sob um ambiente de computação de nuvem, um prestador de serviços oferece aos usuários serviços desejados pela combinação de recursos de computação em centros de dados localizados fisicamente em diferentes locais, utilizando tecnologia de virtualização. Um usuário do serviço não tem que instalar recursos de computação, por exemplo, uma aplicação, uma instalação de armazenamento, um sistema operacional (OS), ou recursos de segurança, em sua/seu próprio terminal, a fim de usá-los, mas pode selecionar e usar os serviços desejados dentre os serviços em um espaço virtual gerado através da tecnologia de virtualização, em um momento desej ado.
[000399] Um terminal de usuário de um usuário do serviço especificado está conectado ao servidor de computação de nuvem 14100 através de uma rede de informação de comunicação, incluindo a Internet e uma rede de telecomunicações móveis. Terminais de usuário podem ser providos com serviços de computação de nuvem, e especificamente serviços de reprodução de filmes, a partir do servidor de computação de nuvem 14100. Os terminais de usuário podem ser de vários tipos de dispositivos eletrônicos capazes de conexão com a Internet, por exemplo, um PC de mesa 14300, uma TV inteligente 14400, um telefone inteligente 14500, um computador notebook 14600, um dispositivo de reprodução de multimídia portátil (PMP) 14700, um tablet PC 14800, e outros semelhantes.
[000400] O servidor de computação de nuvem 14100 pode combinar a pluralidade de recursos de computação 14200 distribuídos em uma rede de nuvem e fornecer terminais de usuário com um resultado da combinação. A pluralidade de recursos de computação 14200 pode incluir vários serviços de dados, e pode incluir os dados enviados a partir de terminais de usuário. Como descrito acima, o servidor de computação de nuvem 14100 pode fornecer terminais de usuário com os serviços desejados pela combinação de um banco de dados de filmes distribuídos em diferentes regiões de acordo com a tecnologia de virtualização.
[000401] Informação de usuário sobre os usuários que subscreveram um serviço de computação de nuvem é armazenada no banco de dados de usuário 14100. A informação de usuário pode incluir informação de registro, endereços, nomes e informação de crédito pessoal dos usuários. A informação de usuário pode incluir ainda índices de imagens em movimento. Aqui, os índices podem incluir uma lista de filmes que já tenham sido reproduzidos, uma lista de imagens em movimento que serão reproduzidas, um ponto de pausa de um filme que estava sendo reproduzido, e semelhante.
[000402] A informação sobre um vídeo armazenado no DB de usuário 14100 pode ser compartilhada entre os dispositivos de usuário. Por exemplo, quando um serviço de vídeo é fornecido ao computador portátil 14600 em resposta a um pedido do computador portátil 14600, um histórico de reprodução do serviço de vídeo é armazenado no banco de dados de usuário 14100. Quando uma solicitação para reproduzir este serviço de filme é recebida a partir do telefone inteligente 14500, o servidor de computação de nuvem 14000 pesquisa e reproduz esse serviço de filme, com base no banco de dados de usuário 14100. Quando o telefone inteligente 1450 recebe um fluxo de dados de filme a partir do servidor de computação de nuvem 14100, um processo de reprodução de video mediante decodificação do fluxo de dados de filme é semelhante à operação do telefone móvel 12500 descrito acima com referência à figura 24.
[000403] O servidor de computação de nuvem 14100 pode consultar um histórico de reprodução de um serviço de filme desejado, armazenado no DB de usuário 14100. Por exemplo, o servidor de computação de nuvem 14100 recebe uma solicitação para reproduzir um filme armazenado no DB de usuário 14100, a partir de um terminal de usuário. Se esse filme estava sendo reproduzido, então, um método de transmissão de filme, executado pelo servidor de computação de nuvem 14100 pode variar de acordo com o pedido do terminal de usuário, ou seja, de acordo com o fato de se o filme será reproduzido, a partir de um seu inicio, nem um ponto de pausa do mesmo. Por exemplo, se o terminal de usuário solicita a reprodução do filme, a partir do seu inicio, o servidor de computação de nuvem 14100 transmite em fluxo continuo o filme a partir de um seu primeiro quadro para o terminal do usuário. Se o terminal de usuário solicita a reprodução do filme, a partir do ponto de pausa do mesmo, o servidor de computação de nuvem 14100 transmite em fluxo contínuo o filme começando a partir de um quadro correspondendo ao ponto de pausa, para o terminal de usuário.
[000404] Neste caso, o terminal de usuário pode incluir um aparelho de decodificação video tal como descrito acima com referência às figuras IA a 20. Como outro exemplo, o terminal de usuário pode incluir um aparelho de codificação de video, como descrito acima com referência às figuras IA a 20. Alternativamente, o terminal de usuário pode incluir tanto o aparelho de decodificação de video e o aparelho de codificação de video, como descrito acima com referência às figuras IA a 20.
[000405] Várias aplicações de um método de codificação de video, um método de decodificação de video, um aparelho de codificação de video, e um aparelho de decodificação video de acordo com uma modalidade exemplar descrita acima, com referência às fig. IA a 20, foram descritas anteriormente, com referência às figuras 21 a 27, Contudo, métodos de armazenar o método de codificação de video e o método de decodificação video em um meio de armazenamento ou métodos incluindo o aparelho de codificação de video e o aparelho de decodificação de video em um dispositivo de acordo com várias modalidades exemplares, não são limitados às modalidades descritas acima, com referência às figuras 21 a 27.
[000406] Embora modalidades exemplares tenham sido particularmente mostradas e descritas com referência aos desenhos mediante uso de termos específicos, as modalidades exemplares e os termos foram usados apenas para explanação e não devem ser considerados como limitando o escopo do conceito inventivo como definido pelas reivindicações. As modalidades exemplares devem ser consideradas apenas em um sentido descritivo e não com o propósito de limitação. Portanto, o escopo da invenção é definido não pela descrição detalhada, mas pelas reivindicações anexas, e todas ,as diferenças dentro do escopo serão consideradas como estando incluidas no conceito inventivo.

Claims (4)

1. APARELHO DE DECODIFICAÇÃO DE VÍDEO, caracterizado por compreender: um receptor configurado para obter, a partir de um fluxo de bits, informação sobre um tamanho máximo de uma unidade de codificação e primeira informação indicando se o segmento de fatia dependente tem permissão para ser incluído em uma imagem; e um decodificador configurado para determinar ao menos uma unidade de codificação máxima incluída em um primeiro segmento de fatia, com base em um tamanho máximo de unidade de codificação que é determinado mediante uso da informação sobre o tamanho máximo; em que o receptor está ainda configurado para obter a partir do fluxo de bits, segunda informação indicando se uma unidade de codificação máxima atual está ou não no fim do primeiro segmento de fatia, em que o decodificador está ainda configurado para determinar uma quantidade de pontos de entrada de subconjuntos, os quais se incluem no primeiro segmento de fatia, com base na terceira informação obtida de um cabeçalho de segmento de fatia do fluxo de bits, e para determinar posições dos pontos de entrada com base na quarta informação obtida do cabeçalho do segmento de fatia, que indica um número que é menor em 1 que o deslocamento dos pontos de entrada, em que o decodificador está ainda configurado para armazenar uma variável de contexto do primeiro segmento de fatia se a primeira informação indicar que o segmento de fatia dependente tem permissão para ser incluído na imagem e a segunda informação indicar que a unidade de codificação máxima atual está na extremidade do primeiro segmento de fatia, e em que o número e as posições dos pontos de entrada são determinados se uma pluralidade de peças é incluída na imagem ou a sincronização pode ser realizada para variáveis de contexto da unidade de codificação máxima atual incluída na imagem.
2. APARELHO DE DECODIFICAÇÃO DE VÍDEO, de acordo com a reivindicação 1, caracterizado por o decodificador ser configurado para armazenar variáveis de contexto da unidade de codificação máxima atual, se o segmento de fatia dependente puder ser incluído na imagem.
3. APARELHO DE DECODIFICAÇÃO DE VÍDEO, de acordo com a reivindicação 1, caracterizado por o decodificador ser configurado para armazenar uma variável de contexto da unidade de codificação máxima atual finalmente decodificada no primeiro segmento de fatia, se a segunda informação indicar que a unidade de codificação máxima atual está no final do primeiro segmento de fatia.
4. APARELHO DE DECODIFICAÇÃO DE VÍDEO, de acordo com a reivindicação 1, caracterizado por o descodificador ser ainda configurado para determinar se um segmento de fatia da imagem pode ser incluído ou não com base na primeira informação obtida de um conjunto de parâmetros de imagem do fluxo de bits, determinando se a unidade de codificação máxima atual é uma unidade de codificação máxima final ou não, com base na segunda informação obtida a partir dos dados da unidade de codificação máxima atual entre os dados de cada um dos segmentos de fatia do fluxo de bits, e obter uma sequência binária a partir dos dados da unidade de codificação máxima atual.
BR122015024097-2A 2013-01-04 2014-01-06 aparelho de decodificação de vídeo BR122015024097B1 (pt)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201361748964P 2013-01-04 2013-01-04
US61/748,964 2013-01-04
BR112015016040-9A BR112015016040B1 (pt) 2013-01-04 2014-01-06 Método de decodificação de vídeo
PCT/KR2014/000093 WO2014107065A1 (ko) 2013-01-04 2014-01-06 슬라이스 세그먼트의 엔트로피 부호화 방법 및 그 장치, 슬라이스 세그먼트의 엔트로피 복호화 방법 및 그 장치

Publications (1)

Publication Number Publication Date
BR122015024097B1 true BR122015024097B1 (pt) 2021-01-05

Family

ID=51062340

Family Applications (5)

Application Number Title Priority Date Filing Date
BR112015016040-9A BR112015016040B1 (pt) 2013-01-04 2014-01-06 Método de decodificação de vídeo
BR122015024096-4A BR122015024096B1 (pt) 2013-01-04 2014-01-06 Aparelho de decodificação de vídeo
BR122015024097-2A BR122015024097B1 (pt) 2013-01-04 2014-01-06 aparelho de decodificação de vídeo
BR122015024099-9A BR122015024099B1 (pt) 2013-01-04 2014-01-06 Método de decodificação de vídeo
BR122015024098A BR122015024098B1 (pt) 2013-01-04 2014-01-06 método de decodificação de vídeo

Family Applications Before (2)

Application Number Title Priority Date Filing Date
BR112015016040-9A BR112015016040B1 (pt) 2013-01-04 2014-01-06 Método de decodificação de vídeo
BR122015024096-4A BR122015024096B1 (pt) 2013-01-04 2014-01-06 Aparelho de decodificação de vídeo

Family Applications After (2)

Application Number Title Priority Date Filing Date
BR122015024099-9A BR122015024099B1 (pt) 2013-01-04 2014-01-06 Método de decodificação de vídeo
BR122015024098A BR122015024098B1 (pt) 2013-01-04 2014-01-06 método de decodificação de vídeo

Country Status (26)

Country Link
US (6) US9826253B2 (pt)
EP (5) EP2986003B1 (pt)
JP (8) JP5990342B2 (pt)
KR (6) KR101589503B1 (pt)
CN (6) CN105357525B (pt)
AU (1) AU2014204151B2 (pt)
BR (5) BR112015016040B1 (pt)
CA (5) CA2903192C (pt)
CY (4) CY1121633T1 (pt)
DK (4) DK2986004T3 (pt)
ES (5) ES2733223T3 (pt)
HR (4) HRP20190856T1 (pt)
HU (5) HUE044662T2 (pt)
IL (6) IL239751A0 (pt)
LT (4) LT2940999T (pt)
MX (5) MX349298B (pt)
MY (4) MY189418A (pt)
PL (5) PL2986005T3 (pt)
PT (4) PT2986004T (pt)
RS (4) RS58714B1 (pt)
RU (5) RU2608465C1 (pt)
SG (5) SG10201507029UA (pt)
SI (4) SI2986005T1 (pt)
TR (4) TR201906900T4 (pt)
WO (1) WO2014107065A1 (pt)
ZA (4) ZA201506854B (pt)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2014177342A1 (de) * 2013-04-30 2014-11-06 Sioptica Gmbh Bildschirm und verfahren zur sicheren darstellung von informationen
US10264261B2 (en) * 2013-08-27 2019-04-16 Integrated Device Technology, Inc. Entropy encoding initialization for a block dependent upon an unencoded block
WO2016164459A1 (en) * 2015-04-10 2016-10-13 Red.Com, Inc. Video camera with rate control video compression
US10574993B2 (en) 2015-05-29 2020-02-25 Qualcomm Incorporated Coding data using an enhanced context-adaptive binary arithmetic coding (CABAC) design
CN105187845B (zh) 2015-08-10 2018-07-03 珠海全志科技股份有限公司 视频数据解码装置及解码方法
US10368073B2 (en) * 2015-12-07 2019-07-30 Qualcomm Incorporated Multi-region search range for block prediction mode for display stream compression (DSC)
KR102397474B1 (ko) * 2016-03-30 2022-05-13 한국전자통신연구원 픽쳐 분할 정보를 사용하는 비디오의 부호화 및 복호화를 위한 방법 및 장치
JP2019514308A (ja) * 2016-05-10 2019-05-30 サムスン エレクトロニクス カンパニー リミテッド 映像を符号化/復号する方法及びその装置
CN106331715B (zh) * 2016-08-24 2019-04-12 上海富瀚微电子股份有限公司 基于视频压缩编码标准h.265的熵编码系统及其编码方法
US20180139464A1 (en) * 2016-11-17 2018-05-17 Mediatek Inc. Decoding system for tile-based videos
KR102414164B1 (ko) * 2017-03-31 2022-06-29 한국전자통신연구원 향상된 산술부호화를 제공하는 영상 처리 방법, 그를 이용한 영상 복호화, 부호화 방법 및 그 장치
AU2018251489B2 (en) * 2017-04-13 2021-05-27 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Method and device for entropy encoding, decoding video signal
JP7313330B2 (ja) 2017-07-05 2023-07-24 レッド.コム,エルエルシー 電子機器でのビデオ画像データ処理
WO2019160133A1 (ja) * 2018-02-19 2019-08-22 日本電信電話株式会社 情報管理装置、情報管理方法及び情報管理プログラム
CN110278443B (zh) * 2018-03-16 2022-02-11 华为技术有限公司 划分标志位的上下文建模方法及装置
WO2019174567A1 (zh) 2018-03-16 2019-09-19 华为技术有限公司 划分标志位的上下文建模方法及装置
US10915341B2 (en) * 2018-03-28 2021-02-09 Bank Of America Corporation Computer architecture for processing correlithm objects using a selective context input
US10491914B2 (en) * 2018-03-29 2019-11-26 Tencent America LLC Transform information prediction
EP3777196A1 (en) * 2018-03-29 2021-02-17 FRAUNHOFER-GESELLSCHAFT zur Förderung der angewandten Forschung e.V. Concept for enhancing parallel coding capabilities
CN108989825B (zh) * 2018-07-18 2021-05-07 北京奇艺世纪科技有限公司 一种算术编码方法、装置及电子设备
KR20230093377A (ko) 2018-12-07 2023-06-27 삼성전자주식회사 타일 및 슬라이스를 이용하는 비디오 부호화 방법 및 복호화 방법, 및 타일 및 슬라이스를 이용하는 비디오 부호화 장치 및 복호화 장치
KR102648032B1 (ko) * 2019-01-09 2024-03-14 후아웨이 테크놀러지 컴퍼니 리미티드 비디오 코딩의 서브 픽처 레벨 지표 시그널링
JP2022526023A (ja) * 2019-04-10 2022-05-20 ホアウェイ・テクノロジーズ・カンパニー・リミテッド エンコーダ、デコーダ、および対応する方法
CN112956198A (zh) 2019-06-22 2021-06-11 株式会社 Xris 用于对图像信号进行编码/解码的方法及其装置
US11516489B2 (en) * 2019-06-24 2022-11-29 Tencent America LLC Method and apparatus for video coding
CN112135135A (zh) * 2019-06-24 2020-12-25 腾讯美国有限责任公司 视频解码方法、装置、计算机设备及存储介质
US11446572B2 (en) * 2019-10-01 2022-09-20 Sony Interactive Entertainment Inc. Early scan-out of server display buffer at flip-time for cloud gaming applications
US11524230B2 (en) 2019-10-01 2022-12-13 Sony Interactive Entertainment Inc. Encoder tuning to improve tradeoffs between latency and video quality in cloud gaming applications
US10974142B1 (en) 2019-10-01 2021-04-13 Sony Interactive Entertainment Inc. Synchronization and offset of VSYNC between cloud gaming server and client
US11865434B2 (en) 2019-10-01 2024-01-09 Sony Interactive Entertainment Inc. Reducing latency in cloud gaming applications by overlapping receive and decode of video frames and their display at the client
US11539960B2 (en) 2019-10-01 2022-12-27 Sony Interactive Entertainment Inc. Game application providing scene change hint for encoding at a cloud gaming server
WO2022035256A1 (ko) * 2020-08-12 2022-02-17 엘지전자 주식회사 포인트 클라우드 데이터 송신 장치, 포인트 클라우드 데이터 송신 방법, 포인트 클라우드 데이터 수신 장치 및 포인트 클라우드 데이터 수신 방법
US11375242B1 (en) 2021-01-27 2022-06-28 Qualcomm Incorporated Compression of bitstream indexes for parallel entropy coding
WO2023075488A1 (ko) * 2021-10-28 2023-05-04 엘지전자 주식회사 엔트로피 코딩에 기반한 피쳐 부호화/복호화 방법, 장치, 비트스트림을 저장한 기록 매체 및 비트스트림 전송 방법

Family Cites Families (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7177522B2 (en) * 2000-10-10 2007-02-13 Broadcom Corporation System and method for personal video recording
JP3807342B2 (ja) 2002-04-25 2006-08-09 三菱電機株式会社 デジタル信号符号化装置、デジタル信号復号装置、デジタル信号算術符号化方法、およびデジタル信号算術復号方法
KR100597402B1 (ko) 2003-12-01 2006-07-06 삼성전자주식회사 스케일러블 비디오 코딩 및 디코딩 방법, 이를 위한 장치
RU2329615C2 (ru) 2003-12-01 2008-07-20 Самсунг Электроникс Ко., Лтд. Способ масштабируемого кодирования и декодирования видеосигнала и устройство для его осуществления
CN101150719B (zh) * 2006-09-20 2010-08-11 华为技术有限公司 并行视频编码的方法及装置
JP4962400B2 (ja) * 2008-04-30 2012-06-27 ソニー株式会社 算術復号装置
US7932843B2 (en) * 2008-10-17 2011-04-26 Texas Instruments Incorporated Parallel CABAC decoding for video decompression
KR20110017719A (ko) 2009-08-14 2011-02-22 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
US9049450B2 (en) 2010-04-05 2015-06-02 Samsung Electronics Co., Ltd. Method and apparatus for encoding video based on internal bit depth increment, and method and apparatus for decoding video based on internal bit depth increment
KR20110112168A (ko) * 2010-04-05 2011-10-12 삼성전자주식회사 내부 비트뎁스 확장에 기반한 비디오 부호화 방법 및 그 장치, 내부 비트뎁스 확장에 기반한 비디오 복호화 방법 및 그 장치
US8982961B2 (en) 2010-04-05 2015-03-17 Samsung Electronics Co., Ltd. Method and apparatus for encoding video by using transformation index, and method and apparatus for decoding video by using transformation index
TWI403170B (zh) * 2010-05-21 2013-07-21 Univ Nat Chiao Tung 背景調適性二進制算術解碼裝置及其解碼方法
BR112013001354B1 (pt) * 2010-07-21 2022-03-29 Velos Media International Limited Método e dispositivo para codificação de imagem
US8654860B2 (en) * 2010-11-01 2014-02-18 Mediatek Inc. Apparatus and method for high efficiency video coding using flexible slice structure
US20120106622A1 (en) * 2010-11-03 2012-05-03 Mediatek Inc. Method and Apparatus of Slice Grouping for High Efficiency Video Coding
US20130223528A1 (en) 2010-11-15 2013-08-29 Electronics And Telecommunications Research Institute Method and apparatus for parallel entropy encoding/decoding
CN102595119B (zh) * 2011-01-14 2014-03-12 华为技术有限公司 条带编码方法及装置、条带解码方法及装置
US20120189052A1 (en) 2011-01-24 2012-07-26 Qualcomm Incorporated Signaling quantization parameter changes for coded units in high efficiency video coding (hevc)
GB2488830B (en) * 2011-03-10 2015-07-29 Canon Kk Method and device for encoding image data and method and device for decoding image data
WO2012134246A2 (ko) * 2011-04-01 2012-10-04 엘지전자 주식회사 엔트로피 디코딩 방법 및 이를 이용하는 디코딩 장치
TWI487295B (zh) * 2011-05-17 2015-06-01 Univ Nat Cheng Kung 高產出平行化avc/h.264前後文適應性二位元算數解碼器之方法
US9584819B2 (en) * 2011-10-24 2017-02-28 Qualcomm Incorporated Grouping of tiles for video coding
US9124895B2 (en) * 2011-11-04 2015-09-01 Qualcomm Incorporated Video coding with network abstraction layer units that include multiple encoded picture partitions
KR102238127B1 (ko) * 2011-12-29 2021-04-08 엘지전자 주식회사 비디오 인코딩 및 디코딩 방법과 이를 이용하는 장치
SG10201606621XA (en) * 2012-01-20 2016-09-29 Ge Video Compression Llc Coding Concept Allowing Parallel Processing, Transport Demultiplexer and Video Bitstream
US10244246B2 (en) * 2012-02-02 2019-03-26 Texas Instruments Incorporated Sub-pictures for pixel rate balancing on multi-core platforms
KR102132784B1 (ko) * 2012-03-22 2020-07-13 엘지전자 주식회사 비디오 인코딩 방법, 비디오 디코딩 방법 및 이를 이용하는 장치
US9838684B2 (en) * 2012-04-11 2017-12-05 Qualcomm Incorporated Wavefront parallel processing for video coding
CN104620584B (zh) * 2012-04-13 2019-10-18 Ge视频压缩有限责任公司 可缩放数据流及网络实体
CN108769692B (zh) * 2012-06-26 2022-05-24 Lg 电子株式会社 视频编码方法、视频解码方法和使用其的装置
AU2013322008B2 (en) * 2012-09-26 2016-10-27 Sun Patent Trust Image coding method, image decoding method, image coding apparatus, image decoding apparatus, and image coding and decoding apparatus
MX341067B (es) * 2012-09-26 2016-08-05 Panasonic Ip Corp America Metodo de decodificacion de imagenes, metodo de codificacion de imagenes, aparato de decodificacion de imagenes, aparato de codificacion de imagenes y aparato de codificacion y decodificacion de imagenes.

Also Published As

Publication number Publication date
PL2940999T3 (pl) 2019-09-30
PT2986005T (pt) 2019-07-08
US20150341671A1 (en) 2015-11-26
DK2986003T3 (da) 2019-05-20
CA2903190A1 (en) 2014-07-10
US20150341670A1 (en) 2015-11-26
SG10201507030WA (en) 2015-10-29
SG10201507029UA (en) 2015-10-29
EP2986006B1 (en) 2019-06-19
RS58714B1 (sr) 2019-06-28
BR112015016040B1 (pt) 2020-09-24
KR101589503B1 (ko) 2016-01-28
MX2018006466A (es) 2022-08-25
JP2017220943A (ja) 2017-12-14
TR201906932T4 (tr) 2019-06-21
ZA201506855B (en) 2017-01-25
IL239751A0 (en) 2015-08-31
MY189418A (en) 2022-02-10
EP2986004B1 (en) 2019-05-08
JP2016226023A (ja) 2016-12-28
CN105472397B (zh) 2018-09-18
EP2986006A3 (en) 2016-03-09
EP2940999A4 (en) 2016-03-02
HUE045384T2 (hu) 2019-12-30
CN105357525B (zh) 2019-04-16
ES2735008T3 (es) 2019-12-13
AU2014204151B2 (en) 2016-11-03
RS58715B1 (sr) 2019-06-28
PL2986003T3 (pl) 2019-08-30
EP2940999B1 (en) 2019-06-12
DK2986005T3 (da) 2019-05-20
PL2986006T3 (pl) 2019-09-30
RU2609749C1 (ru) 2017-02-02
MY193371A (en) 2022-10-07
JP2016506200A (ja) 2016-02-25
PT2940999T (pt) 2019-08-30
DK2940999T3 (da) 2019-06-24
EP2986005A2 (en) 2016-02-17
CA2903192C (en) 2017-01-03
US10271071B2 (en) 2019-04-23
CA2903192A1 (en) 2014-07-10
JP5990342B2 (ja) 2016-09-14
EP2986003A2 (en) 2016-02-17
CN105027568A (zh) 2015-11-04
MY170156A (en) 2019-07-09
LT2986003T (lt) 2019-05-27
HRP20190854T1 (hr) 2019-06-28
MX349298B (es) 2017-07-21
CA2897006A1 (en) 2014-07-10
IL265174B (en) 2019-12-31
JP2016105627A (ja) 2016-06-09
US9866873B2 (en) 2018-01-09
PL2986004T3 (pl) 2019-08-30
JP5990350B2 (ja) 2016-09-14
WO2014107065A1 (ko) 2014-07-10
KR101589506B1 (ko) 2016-01-28
RS58713B1 (sr) 2019-06-28
CY1121656T1 (el) 2020-07-31
HRP20191066T1 (hr) 2019-09-20
TR201908706T4 (tr) 2019-07-22
KR20150087824A (ko) 2015-07-30
LT2986005T (lt) 2019-05-27
JP2016096580A (ja) 2016-05-26
KR20150087822A (ko) 2015-07-30
HRP20190856T1 (hr) 2019-06-28
SI2986005T1 (sl) 2019-08-30
BR112015016040A2 (pt) 2017-07-11
US9877049B2 (en) 2018-01-23
EP2986004A3 (en) 2016-03-09
KR101589507B1 (ko) 2016-01-28
US20150341669A1 (en) 2015-11-26
CN105472397A (zh) 2016-04-06
HUE045383T2 (hu) 2019-12-30
CA2897006C (en) 2017-02-07
EP2940999A1 (en) 2015-11-04
EP2986004A2 (en) 2016-02-17
CY1121765T1 (el) 2020-07-31
RU2608465C1 (ru) 2017-01-18
MX364485B (es) 2019-04-29
HUE045386T2 (hu) 2019-12-30
PT2986003T (pt) 2019-06-25
JP5990349B2 (ja) 2016-09-14
IL243289B (en) 2018-04-30
PL2986005T3 (pl) 2019-08-30
ZA201506856B (en) 2017-01-25
EP2986003A3 (en) 2016-03-16
CA2903195A1 (en) 2014-07-10
CA2903149A1 (en) 2014-07-10
ES2733223T3 (es) 2019-11-28
ES2734907T3 (es) 2019-12-12
MX366775B (es) 2019-07-24
JP5990348B2 (ja) 2016-09-14
US9866874B2 (en) 2018-01-09
IL243291B (en) 2019-03-31
JP5990347B2 (ja) 2016-09-14
RU2608353C1 (ru) 2017-01-18
JP2016105628A (ja) 2016-06-09
EP2986006A2 (en) 2016-02-17
KR102040315B1 (ko) 2019-11-04
LT2986004T (lt) 2019-05-27
RU2609750C1 (ru) 2017-02-02
HUE044662T2 (hu) 2019-11-28
CN105472396A (zh) 2016-04-06
MY189391A (en) 2022-02-09
TR201906900T4 (tr) 2019-06-21
CN105472396B (zh) 2018-05-25
BR122015024099B1 (pt) 2020-09-24
BR122015024098B1 (pt) 2020-12-29
JP6388697B2 (ja) 2018-09-12
TR201906908T4 (tr) 2019-05-21
SI2940999T1 (sl) 2019-08-30
CA2903190C (en) 2017-08-29
IL243292B (en) 2018-10-31
SI2986004T1 (sl) 2019-08-30
EP2986005A3 (en) 2016-03-09
US9826253B2 (en) 2017-11-21
SG11201505296RA (en) 2015-08-28
HUE044717T2 (hu) 2019-11-28
JP6622870B2 (ja) 2019-12-18
RU2608263C1 (ru) 2017-01-17
BR122015024096B1 (pt) 2020-09-24
DK2986004T3 (da) 2019-05-20
JP2018201234A (ja) 2018-12-20
US20150341672A1 (en) 2015-11-26
CN105357539A (zh) 2016-02-24
KR20150087823A (ko) 2015-07-30
PT2986004T (pt) 2019-07-08
CN108307196A (zh) 2018-07-20
CN105357539B (zh) 2018-05-25
CN105027568B (zh) 2018-04-10
ZA201506854B (en) 2017-01-25
JP2016096581A (ja) 2016-05-26
HRP20190855T1 (hr) 2019-06-28
MX356391B (es) 2018-05-28
US9826254B2 (en) 2017-11-21
SI2986003T1 (sl) 2019-08-30
CN108307196B (zh) 2020-12-04
EP2986005B1 (en) 2019-05-08
JP6196355B2 (ja) 2017-09-13
ZA201506857B (en) 2017-01-25
RS58864B1 (sr) 2019-07-31
ES2728091T3 (es) 2019-10-22
SG10201507025QA (en) 2015-10-29
MX2015008710A (es) 2015-10-26
IL243290B (en) 2019-03-31
SG10201507028PA (en) 2015-10-29
IL265174A (en) 2019-05-30
KR101589505B1 (ko) 2016-01-28
KR20160024364A (ko) 2016-03-04
LT2940999T (lt) 2019-07-10
KR20140089484A (ko) 2014-07-15
KR101588219B1 (ko) 2016-01-25
EP2986003B1 (en) 2019-05-08
ES2733027T3 (es) 2019-11-27
AU2014204151A1 (en) 2015-08-13
US20150341668A1 (en) 2015-11-26
CN105357525A (zh) 2016-02-24
CA2903149C (en) 2017-03-14
CY1121633T1 (el) 2020-07-31
US20180077429A1 (en) 2018-03-15
KR20150087825A (ko) 2015-07-30
CY1121634T1 (el) 2020-07-31
CA2903195C (en) 2017-04-18

Similar Documents

Publication Publication Date Title
BR122015024097B1 (pt) aparelho de decodificação de vídeo
CA2897599C (en) Encoding and decoding using constraint information for arrangement of samples of a picture from a video data stream
BR122019019874B1 (pt) Método de decodificação de vídeo
BR112015001111B1 (pt) método de decodificação de desvio adaptativo de amostra (sao)
BR112014030935B1 (pt) Método de ajuste de deslocamento adaptativo de amostra (sao)
BR122015021736A2 (pt) aparelho para decodificar uma imagem
BR122021007881B1 (pt) Método de decodificação de vídeo, e método de codificação de vídeo
AU2015210370B2 (en) Method for entropy-encoding slice segment and apparatus therefor, and method for entropy-decoding slice segment and apparatus therefor

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 06/01/2014, OBSERVADAS AS CONDICOES LEGAIS.