BR112021013071B1 - Métodos e aparelho para decodificar e codificar um sinal de vídeo por um dispositivo e meio legível por computador não transitório - Google Patents

Métodos e aparelho para decodificar e codificar um sinal de vídeo por um dispositivo e meio legível por computador não transitório Download PDF

Info

Publication number
BR112021013071B1
BR112021013071B1 BR112021013071-3A BR112021013071A BR112021013071B1 BR 112021013071 B1 BR112021013071 B1 BR 112021013071B1 BR 112021013071 A BR112021013071 A BR 112021013071A BR 112021013071 B1 BR112021013071 B1 BR 112021013071B1
Authority
BR
Brazil
Prior art keywords
engraving
list
entry
strp
entries
Prior art date
Application number
BR112021013071-3A
Other languages
English (en)
Other versions
BR112021013071A2 (pt
Inventor
Seethal Paluri
Seunghwan Kim
Original Assignee
Lg Electronics Inc
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 Lg Electronics Inc filed Critical Lg Electronics Inc
Publication of BR112021013071A2 publication Critical patent/BR112021013071A2/pt
Publication of BR112021013071B1 publication Critical patent/BR112021013071B1/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/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • 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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • 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/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/42Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation
    • H04N19/423Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by implementation details or hardware specially adapted for video compression or decompression, e.g. dedicated software implementation characterised by memory arrangements
    • 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
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • 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
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/58Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one
    • 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
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

MÉTODO E DISPOSITIVO PARA PROCESSAMENTO DE SINAL DE VÍDEO USANDO INTERPREDIÇÃO. As modalidades da divulgação proveem métodos e dispositivos para decodificar sinais de vídeo usando interpredição. De acordo com uma modalidade da divulgação, um método para processar um sinal de vídeo compreende construir uma lista de imagem de referência de uma imagem atual no sinal de vídeo e realizar uma predição para uma imagem atual usando a lista de imagem de referência, em que construir a lista de imagem de referência compreende, se uma primeira entrada da lista de imagem de referência corresponde a uma imagem de referência de curto prazo (STRP), obter uma diferença de contagem de ordem de imagem (POC) entre uma imagem relacionada à primeira entrada e outra imagem, e se uma segunda entrada da lista de imagem de referência corresponde a uma imagem de referência de longo prazo (LTRP), obter um valor de módulo de POC de uma imagem relacionada à segunda entrada. Uma lista de imagem de referência para identificar uma imagem pode ser gerada de uma maneira simplificada e eficaz. Assim, o desempenho de compressão pode ser aumentado e o tempo de cálculo pode ser diminuído.

Description

[Referência Cruzada a Pedidos Relacionados]
[001] Este pedido é a Fase Nacional do depósito sob 35 U.S.C. 371 do Pedido de Patente Internacional No. PCT/KR2020/000032, depositado em 2 de janeiro de 2020, que reivindica o benefício do Pedido de Patente U.S. No. 62/787.384, depositado em 2 de janeiro de 2019, cujos conteúdos são todos aqui incorporados por referência aqui em sua totalidade.
[Campo Técnico]
[002] As modalidades da divulgação se referem a métodos e dispositivos para processamento de sinais de vídeo usando interpredição e, mais especificamente, a métodos e dispositivos para construir uma lista de gravura de referência para predizer a gravura atual.
[Técnica Anterior]
[003] A codificação de compressão se refere à tecnologia para uma série de processos de sinal para transmitir informação digitalizadas via linha de comunicação ou armazenar as mesmas em um formato adequado em um meio de armazenamento. Vídeos, imagens, vozes ou outras mídias podem ser direcionados para codificação de compressão. Em particular, a tecnologia de codificação de compressão destinada a vídeos é conhecida como compressão de vídeo.
[004] O conteúdo de vídeo de próxima geração irá apresentar uma alta resolução espacial, alta taxa de quadros e alta dimensionalidade de representação de cena. Para o processamento de tal conteúdo, um grande aumento resultará em armazenamento de memória, taxa de acesso à memória e potência de processamento.
[005] Assim, existe a necessidade de um projeto de ferramenta de codifica- ção para processar de forma eficiente o conteúdo de vídeo de próxima geração. Em particular, os padrões de codec de vídeo de pós-codificação de vídeo de alta eficiência (HEVC) requerem tecnologia de predição capaz de gerar amostras de predição com precisão enquanto usa recursos de forma mais eficiente. [Descrição Detalhada da Divulgação]
[Problema Técnico]
[006] As modalidades da divulgação proveem um método e dispositivo para construir uma lista de gravura de referência necessária para predizer a gravura atual.
[007] As modalidades da divulgação proveem um método e dispositivo para obter informação necessárias para construir uma lista de gravura de referência.
[008] As modalidades da divulgação proveem um método e dispositivo para definir o número de entradas necessárias para construir uma lista de gravura de referência.
[009] As modalidades da divulgação proveem um método e dispositivo para reduzir a quantidade de elementos de sintaxe necessários para construir uma lista de gravura de referência.
[010] As modalidades da divulgação proveem um método e dispositivo para contar o número de vezes de marcação de gravura de referência durante o curso da construção de uma lista de gravura de referência.
[011] Os objetos da divulgação não estão limitados ao anterior, e outros objetos não mencionados seriam aparentes para um versado na técnica a partir da seguinte descrição.
[Solução Técnica]
[012] As modalidades da divulgação proveem métodos e dispositivos para decodificar sinais de vídeo usando interpredição. De acordo com uma modalidade da divulgação, um método para processar um sinal de vídeo compreende construir uma lista de gravura de referência de uma gravura atual no sinal de vídeo e realizar uma predição para uma gravura atual usando a lista de gravura de referência, em que construir a lista de gravura de referência compreende, se uma primeira entrada da lista de gravura de referência corresponde a uma gravura de referência de curto prazo (STRP), obter uma diferença de contagem de ordem de gravura (POC) entre uma gravura relacionada à primeira entrada e outra gravura, e se uma segunda entrada da lista de gravura de referência corresponde a uma gravura de referência de longo prazo (LTRP), obter um valor do módulo de POC de uma gravura relacionada à segunda entrada.
[013] De acordo com uma modalidade, construir a lista de gravura de referência pode compreender obter várias entradas da lista de gravura de referência e realizar uma marcação de gravuras de referência para cada uma das entradas da lista de gravura de referência como LTRP ou STRP pelo número de entradas.
[014] De acordo com uma modalidade, o número de entradas pode ter o valor máximo como o tamanho máximo necessário do armazenador temporário (buffer) de gravura decodificada adicional 14.
[015] De acordo com uma modalidade, realizar a marcação de gravura de referência pode compreender obter um número de entradas de STRP e entradas de LTRP e realizar uma marcação STRP pelo número de entradas de STRP e realizar uma marcação LTRP pelo número de entradas de LTRP.
[016] De acordo com uma modalidade, construir a lista de gravura de referência pode compreender obter um primeiro sinalizador (flag) e determinar se a entrada da lista de gravura de referência corresponde à entrada de STRP ou a uma entrada de LTRP com base no primeiro sinalizador.
[017] De acordo com uma modalidade, a diferença de POC pode ser um valor absoluto de uma POC da outra gravura menos uma POC da gravura relacionada à primeira entrada.
[018] De acordo com uma modalidade, construir a lista de gravura de referência pode compreender, se o valor absoluto for maior que 0, obter um segundo sinalizador indicando um sinal da diferença de POC.
[019] De acordo com uma modalidade da divulgação, um método para codificar um sinal de vídeo compreende construir uma lista de gravura de referência de uma gravura atual no sinal de vídeo, realizar uma predição para a gravura atual usando a lista de gravura de referência e codificar informação para construir a lista de gravura de referência. A informação para construir a lista de gravura de referência pode incluir uma diferença de contagem de ordem de gravura (POC) entre uma gravura relacionada a uma entrada de gravura de referência de curto prazo (STRP) e outra gravura na lista de gravura de referência e um valor de módulo de POC de uma gravura em que uma segunda entrada se refere a uma entrada de gravura de referência de longo prazo (LTRP) na lista de gravura de referência.
[020] De acordo com uma modalidade, a informação de codificação para construir a lista de gravura de referência pode adicionalmente compreender várias entradas da lista de gravura de referência. O número de entradas pode ter o valor máximo conforme o tamanho máximo necessário do armazenador temporário de gravura decodificada adicional 14.
[021] De acordo com uma modalidade, a informação de codificação para construir a lista de gravura de referência pode adicionalmente compreender um primeiro sinalizador que indica se uma entrada da lista de gravura de referência corresponde à entrada de STRP.
[022] De acordo com uma modalidade, a informação de codificação para construir a lista de gravura de referência pode adicionalmente compreender um segundo sinalizador indicando um sinal da diferença de POC para uma entrada em que a diferença de POC é maior que 0.
[023] De acordo com uma modalidade, a informação de codificação para construir a lista de gravura de referência pode ser incluída em um conjunto de parâmetros de sequência (SPS), conjunto de parâmetros de gravura (PPS) ou cabeçalho de fatia em um fluxo de bits relacionado ao sinal de vídeo.
[024] De acordo com outra modalidade da divulgação, um dispositivo para decodificar um sinal de vídeo inclui uma memória para armazenar o sinal de vídeo e um processador acoplado à memória. O processador é configurado para construir uma lista de gravura de referência de uma gravura atual no sinal de vídeo e executar a predição na gravura atual usando a lista de gravura de referência. Para construir a lista de gravura de referência, o processador é configurado para, se uma primeira entrada da lista de gravura de referência corresponde a uma gravura de referência de curto prazo (STRP), obter uma diferença de contagem de ordem de gravura (POC) entre uma gravura relacionada à primeira entrada e outra gravura e, se uma segunda entrada da lista de gravura de referência corresponde a uma gravura de referência de longo prazo (LTRP), obter um valor do módulo de POC de uma gravura relacionada à segunda entrada.
[025] De acordo com outra modalidade da divulgação, um dispositivo para codificar um sinal de vídeo inclui uma memória para armazenar o sinal de vídeo e um processador acoplado à memória. O processador é configurado para construir uma lista de gravura de referência de uma gravura atual no sinal de vídeo e informação de codificação para construir a lista de gravura de referência. A informação de codificação para construir a lista de gravura de referência pode compreender uma diferença de contagem de ordem de gravura (POC) entre uma gravura relacionada à primeira entrada e outra gravura na lista de gravura de referência e um módulo de POC de uma gravura relacionada à segunda entrada na lista de gravura de referência.
[026] De acordo com outra modalidade da divulgação, é provido um meio legível por computador não transitório que armazena uma ou mais instruções. As uma ou mais instruções executadas por um ou mais processadores controlam um dispositivo de processamento de sinal de vídeo para construir uma lista de gravura de referência de uma gravura atual no sinal de vídeo e realizar predição na gravura atual usando a lista de gravura de referência. As uma ou mais instruções controlam o dispositivo de processamento de sinal de vídeo para, para construir a lista de gravura de referência, se uma primeira entrada da lista de gravura de referência corresponde a uma gravura de referência de curto prazo (STRP), obter uma diferença de contagem de ordem de gravura (POC) entre uma gravura relacionada à primeira entrada e outra gravura e, se uma segunda entrada da lista de gravura de referência corresponde a uma gravura de referência de longo prazo (LTRP), obtenha um valor do módulo de POC de uma gravura relacionada à segunda entrada.
[Efeitos Vantajosos]
[027] De acordo com uma modalidade da divulgação, uma lista de gravura de referência necessária para predizer a gravura atual pode ser construída marcando uma gravura de referência.
[028] De acordo com uma modalidade da divulgação, a informação adequada pode ser obtida por tipo de gravura de referência.
[029] De acordo com uma modalidade da divulgação, o número de entradas necessárias para construir uma lista de gravura de referência pode ser definido, permitindo o gerenciamento eficiente da memória necessária para armazenar gravuras.
[030] De acordo com uma modalidade da divulgação, a quantidade de dados necessária para construir uma lista de gravura de referência pode ser omitida para analisar alguns elementos de sintaxe.
[031] De acordo com uma modalidade da divulgação, uma sintaxe para construir uma lista de gravura de referência pode ser eficientemente implementada contando a contagem de marcação de gravura de referência.
[032] Os efeitos da divulgação não estão limitados ao anterior, e outros efeitos não mencionados seriam aparentes para um versado na técnica a partir da seguinte descrição.
[Breve Descrição dos Desenhos]
[033] Uma apreciação mais completa da divulgação e muitos dos aspectos associados da mesma serão facilmente obtidos conforme a mesma se torna melhor compreendida por referência à seguinte descrição detalhada quando considerada em conexão com os desenhos anexos, em que:
[034] FIG. 1 ilustra um sistema de codificação de vídeo exemplar de acordo com uma modalidade da divulgação;
[035] FIG. 2 é um diagrama de blocos que ilustra esquematicamente um aparelho de codificação para codificar sinais de vídeo/imagem de acordo com uma modalidade da divulgação;
[036] FIG. 3 é um diagrama de blocos que ilustra esquematicamente um aparelho de decodificação para decodificar sinais de vídeo de acordo com uma modalidade da divulgação;
[037] FIG. 4 é uma vista que ilustra uma estrutura de um sistema de fluxo contínuo (streaming) de conteúdo de acordo com uma modalidade da divulgação;
[038] FIG. 5 é um diagrama de blocos que ilustra um dispositivo exemplar para processar sinais de vídeo de acordo com uma modalidade da divulgação;
[039] FIGS. 6A, 6B, 6C e 6D são vistas que ilustram estruturas de divisão de blocos exemplares por árvore quádrupla (QT), árvore binária (BT), árvore ternária (TT) e árvore assimétrica (AT), respectivamente, de acordo com uma modalidade da divulgação ;
[040] FIGS. 7 e 8 ilustram um procedimento de codificação de vídeo/imagem baseado em interpredição e uma unidade de interpredição em um aparelho de codificação de acordo com uma modalidade da divulgação;
[041] FIGS. 9 e 10 ilustram um procedimento de decodificação de ví- deo/imagem baseado em interpredição e uma unidade de interpredição em um aparelho de decodificação de acordo com uma modalidade da divulgação;
[042] FIG. 11 é um fluxograma que ilustra um exemplo de construção de uma lista de gravura de referência de acordo com uma modalidade da divulgação;
[043] FIGS. 12 e 13 são fluxogramas que ilustram um exemplo de marcação de gravuras de referência de acordo com uma modalidade da divulgação;
[044] FIG. 14 é um fluxograma que ilustra outro exemplo de marcação de gravuras de referência de acordo com uma modalidade da divulgação; e
[045] FIG. 15 é um fluxograma que ilustra um exemplo de processamento de sinais de vídeo de acordo com uma modalidade da divulgação.
[Modo de Prática da Divulgação]
[046] A seguir, modalidades preferidas da divulgação são descritas em detalhes com referência aos desenhos anexos. A seguinte descrição detalhada tomada em conjunto com as figuras anexas se destina a descrever modalidades exemplares da divulgação, mas não para representar uma única modalidade da divulgação. A descrição detalhada abaixo inclui detalhes específicos para transmitir um entendimento completo da divulgação. No entanto, será facilmente apreciado por aqueles versados na técnica que as modalidades da divulgação podem ser praticadas mesmo sem tais detalhes.
[047] Em alguns casos, para evitar ambiguidade no conceito, estruturas ou dispositivos conhecidos podem ser omitidos ou mostrados em diagramas de blocos enquanto se concentra nas características principais de cada estrutura e dispositivo.
[048] Embora as modalidades da divulgação sejam descritas principalmente com termos gerais atualmente em amplo uso, alguns termos específicos podem ser escolhidos pelos inventores. Nesse caso, as definições dos inventores podem ser providas para os termos. Assim, os termos usados neste documento devem ser in- terpretados à luz de suas definições feitas pelos inventores, ao invés de suas simples definições de dicionário.
[049] A terminologia usada neste documento é provida para uma melhor compreensão da divulgação e alterações podem ser feitas na mesma, sem se afastar do espírito técnico da divulgação. Por exemplo, os termos "sinal", "dados", "amostra", "gravura", "fatia", "mosaico", "quadro" e "bloco" podem ser substituídos e interpretados adequadamente em cada processo de codificação.
[050] Conforme usado neste documento, o termo "unidade de processamento" significa uma unidade de processamento, tal como codificação/decodificação, por exemplo, predição, transformada e/ou quantização. "Unidade de processamento" pode ser interpretada como englobando uma unidade para o componente luma e uma unidade para o componente croma. Por exemplo, a unidade de processamento pode corresponder a um bloco, unidade de codificação (CU), unidade de predição (PU) ou unidade de transformada (TU).
[051] A unidade de processamento também pode ser interpretada como uma unidade para o componente luma ou uma unidade para o componente croma. Por exemplo, a unidade de processamento pode corresponder a um bloco de árvore de codificação, bloco de codificação (CB), PU ou bloco de transformada (TB) para o componente luma. Ou, a unidade de processamento pode corresponder a um CTB, CB, PU ou TB para o componente croma. Sem limitações, no entanto, a unidade de processamento também pode ser interpretada como incluindo uma unidade para o componente luma e uma unidade para o componente croma.
[052] Além disso, a unidade de processamento não é necessariamente limitada a blocos quadrados, mas pode ser um polígono com três ou mais vértices.
[053] Tal como aqui utilizado, "pixel" e "coeficiente" (por exemplo, um coeficiente de transformada ou um coeficiente de transformada que sofreu a primeira transformada) podem ser referidos coletivamente como uma amostra. Quando uma amostra é usada, isso pode significar que, por exemplo, um valor de pixel ou coeficiente (por exemplo, um coeficiente de transformada ou um coeficiente de transformada que sofreu a primeira transformada) é usado.
[054] FIG. 1 ilustra um sistema de codificação de vídeo de exemplo de acordo com uma modalidade da divulgação.
[055] O sistema de codificação de vídeo pode incluir um dispositivo de origem 10 e um dispositivo de recepção 20. O dispositivo de origem 10 pode transferir informação de vídeo/imagem codificado ou dados em um arquivo ou forma de fluxo contínuo para o dispositivo de recepção 20 através de um meio de armazenamento digital ou rede.
[056] O dispositivo de origem 10 pode incluir uma fonte de vídeo 11, um aparelho de codificação 12 e um transmissor 13. O dispositivo de recepção 20 pode incluir um receptor 21, um aparelho de decodificação 22 e um processador 23. O aparelho de codificação 12 pode ser referido como um aparelho de codificação de ví- deo/imagem, e o aparelho de decodificação 22 pode ser referido como um aparelho de decodificação de vídeo/imagem. O transmissor 13 pode ser incluído no aparelho de codificação 12. O receptor 21 pode ser incluído no aparelho de decodificação 22. O processador 23 pode incluir uma unidade de exibição e a unidade de exibição pode ser configurada como um dispositivo separado ou componente externo.
[057] A fonte de vídeo pode obter um vídeo/imagem capturando, sintetizando ou gerando o vídeo/imagem. A fonte de vídeo pode incluir um dispositivo de captura de vídeo/imagem e/ou um dispositivo de geração de vídeo/imagem. O dispositivo de captura de vídeo/imagem pode incluir, por exemplo, uma ou mais câmeras e um arquivo de vídeo/imagem incluindo vídeos/imagens capturados anteriormente. O dispositivo de geração de vídeo/imagem pode incluir, por exemplo, um computador, tablet PC ou smartphone e pode (eletronicamente) gerar vídeos/imagens. Por exemplo, um vídeo/imagem virtual pode ser gerado por meio de, por exemplo, um compu- tador, caso em que um processo para gerar seus dados relacionados pode substituir o processo de captura de vídeo/imagem.
[058] O aparelho de codificação 12 pode codificar o vídeo/imagem de entrada. O aparelho de codificação 12 pode realizar uma série de processos, como predição, transformada e quantização, para compressão e eficiência de codificação. Os dados codificados (informação de vídeo/imagem codificada) podem ser produzidos na forma de um fluxo de bits.
[059] O transmissor 13 pode transferir a informação ou dados de ví- deo/imagem codificados, que foram emitidos na forma de fluxo de bits, em um arquivo ou forma de fluxo contínuo para o receptor do dispositivo de recepção através de um meio de armazenamento digital ou rede. O meio de armazenamento digital pode incluir vários meios de armazenamento, como barramento serial universal (USB), digital seguro (SD), disco compacto (CD), disco de vídeo digital (DVD), Blu-ray, unidade de disco rígido ou mídia de unidade de estado sólido (SSD). O transmissor 13 pode incluir um elemento para gerar arquivos de mídia em um formato de arquivo predeterminado e um elemento para transmissão em uma rede de radiodifu- são/comunicação. O receptor 21 pode extrair o fluxo de bits e transferir o fluxo de bits para o aparelho de decodificação 22.
[060] O aparelho de decodificação 22 pode executar uma série de procedimentos, como quantização inversa, transformada inversa e predição, correspondendo às operações do aparelho de codificação 12, decodificando o vídeo/imagem.
[061] O renderizador 23 pode renderizar o vídeo/imagem decodificados. Os vídeos/imagens renderizados podem ser exibidos na unidade de exibição.
[062] FIG. 2 é um diagrama de blocos que ilustra esquematicamente um aparelho de codificação para codificar sinais de vídeo/imagem de acordo com uma modalidade da divulgação.
[063] Com referência à FIG. 2, um aparelho de codificação 100 pode incluir uma unidade de particionamento de imagem 110, um subtrator 115, uma unidade de transformada 120, uma unidade de quantização 130, uma unidade de quantização inversa 140, uma unidade de transformada inversa 150, um somador 155, uma uni-dade de filtragem 160, uma memória 170, uma unidade de interpredição 180, uma unidade de interpredição 185 e uma unidade de codificação de entropia 190. A unidade de interpredição 180 e a unidade de interpredição 185 podem ser referidas coletivamente como um preditor. Em outras palavras, o preditor pode incluir a unidade de interpredição 180 e a unidade de intrapredição 185. A unidade de transformada 120, a unidade de quantização 130, a unidade de quantização inversa 140 e a unidade de transformada inversa 150 podem ser incluídas em um processador residual. O processador residual pode incluir ainda o subtrator 115. A unidade de particiona- mento de imagem acima descrita 110, subtrator 115, unidade de transformada 120, unidade de quantização 130, unidade de quantização inversa 140, unidade de transformada inversa 150, somador 155, unidade de filtragem 160, unidade de interpredi- ção 180, unidade de intrapredição 185 e unidade de codificação de entropia 190 podem ser configuradas como um único componente de hardware (por exemplo, um codificador ou processador) de acordo com uma modalidade. De acordo com uma modalidade, a memória 170 pode ser configurada como um único componente de hardware (por exemplo, uma memória ou meio de armazenamento digital), e a memória 170 pode incluir um armazenador temporário de gravura decodificada (DPB) 175.
[064] A unidade de partição de imagem 110 pode dividir a entrada de imagem (ou gravura ou quadro) para o aparelho de codificação 100 em uma ou mais unidades de processamento. Como um exemplo, a unidade de processamento pode ser referida como uma unidade de codificação (CU). Neste caso, a unidade de codificação pode ser dividida recursivamente dentre uma unidade de árvore de codificação (CTU) ou unidade de codificação maior (LCU), de acordo com uma estrutura de árvore binária de árvore quádrupla (QTBT). Por exemplo, uma unidade de codificação pode ser dividida em uma pluralidade de unidades de codificação de uma profundidade mais profunda com base na estrutura de árvore quádrupla e/ou estrutura de árvore binária. Neste caso, por exemplo, a estrutura de árvore quádrupla pode ser aplicada primeiro e a estrutura de árvore binária pode então ser aplicada. Ou a estrutura da árvore binária pode ser aplicada primeiro. Um procedimento de codificação de acordo com uma modalidade da divulgação pode ser realizado com base na unidade de codificação final que não é mais dividida. Neste caso, a maior unidade de codificação pode ser imediatamente usada como a unidade de codificação final com base, por exemplo, na eficiência de codificação por propriedades de imagem ou, conforme necessário, a unidade de codificação pode ser recursivamente dividida em unidades de codificação de uma profundidade inferior, e a codificação unidade de tamanho ideal pode ser usada como a unidade de codificação final. O procedimento de codificação pode incluir, por exemplo, predição, transformada ou reconstrução descrita abaixo. Como um exemplo, a unidade de processamento pode incluir ainda a unidade de predição PU ou unidade de transformada TU. Neste caso, a unidade de predição e a unidade de transformada podem ser divididas ou particionadas da unidade de codificação final acima descrita. A unidade de predição pode ser uma unidade de predição de amostra e a unidade de transformada pode ser uma unidade para derivar o coeficiente de transformada e/ou uma unidade para derivar o sinal residual do coeficiente de transformada.
[065] O termo "unidade" pode ser usado indistintamente com "bloco" ou "área" em alguns casos. Geralmente, o bloco MxN pode denotar um conjunto de amostras ou coeficientes de transformada consistindo em M colunas e N linhas. Geralmente, a amostra pode denotar o pixel ou valor de pixel ou pode denotar o valor de pixel/pixel apenas do componente luma ou o valor de pixel/pixel apenas do componente croma. Amostra pode ser usada como um termo correspondente ao pixel ou pel de uma foto (ou imagem).
[066] O aparelho de codificação 100 pode gerar um sinal residual (bloco residual ou matriz de amostra residual) subtraindo o sinal de predição (bloco predito ou matriz de amostra de predição) emitido da unidade de interpredição 180 ou unidade de intrapredição 185 do sinal de imagem de entrada (bloco bruto ou matriz de amostra bruta), e o sinal residual gerado é transmitido para a unidade de transformada 120. Neste caso, como mostrado, a unidade para subtrair o sinal de predição (bloco de predição ou matriz de amostra de predição) do sinal de imagem de entrada (bloco bruto ou matriz de amostra bruta) no aparelho de codificação 100 pode ser referido como o subtrator 115. O preditor pode realizar predição no bloco alvo para processamento (doravante, bloco atual) e gerar um bloco predito incluindo amostras de predição para o bloco atual. O preditor pode determinar se intrapredição ou interpre- dição é aplicada em cada bloco ou unidade CU. O preditor pode gerar vários pedaços de informação para predição, como informação de modo de predição, conforme descrito abaixo em conexão com cada modo de predição, e transferir a informação gerada para a unidade de codificação de entropia 190. A informação relacionada à predição pode ser codificada pela unidade de codificação de entropia 190 e ser emitida na forma de um fluxo de bits.
[067] A unidade de intrapredição 185 pode predizer o bloco atual referenciando as amostras na gravura atual. As amostras referenciadas podem ser vizinhas ou posicionadas longe do bloco atual, dependendo do modo de predição. Na intra- predição, os modos de predição podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. Os modos não direcionais podem incluir, por exemplo, um modo DC e um modo planar. Os modos direcionais podem incluir, por exemplo, 33 modos de predição direcional ou 65 modos de predição direcional, dependendo de quão elaborada é a direção de predição. No entanto, este é apenas um exemplo, e modos de predição mais ou menos direcional podem ser usados. A unidade de intrapredição 185 pode determinar o modo de predição aplicado ao bloco atual usando o modo de predição aplicado ao bloco vizinho.
[068] A unidade de interpredição 180 pode derivar um bloco predito para o bloco atual, com base em um bloco de referência (matriz de amostra de referência) especificado por um vetor de movimento na gravura de referência. Aqui, para reduzir a quantidade de informação de movimento transmitida no modo de interpredição, a informação de movimento pode ser predita por bloco, sub-bloco ou amostra com base na correlação em informação de movimento entre o bloco vizinho e o bloco atual. A informação de movimento pode incluir o vetor de movimento e um índice de gravura de referência. A informação de movimento podem ainda incluir informação de direção interpredição (predição L0, predição L1 ou predição Bi). No caso de interpredi- ção, os blocos vizinhos podem incluir um bloco vizinho espacial presente na gravura atual e um bloco vizinho temporal presente na gravura de referência. A gravura de referência incluindo o bloco de referência pode ser idêntica ou diferente da gravura de referência incluindo o bloco vizinho temporalmente. O bloco vizinho temporalmente pode ser denominado, por exemplo, bloco de referência colocalizado ou CU colo- calizada (colCU), e a gravura de referência incluindo o bloco vizinho temporalmente pode ser denominada uma gravura colocalizada (colPic). Por exemplo, a unidade de interpredição 180 pode construir uma lista de candidatos de informação de movimento com base em blocos vizinhos e gerar informação que indica qual candidato é usado para derivar o vetor de movimento e/ou índice de gravura de referência do bloco atual. A interpredição pode ser realizada com base em vários modos de predi-ção. Por exemplo, no modo de salto ou modo de mesclagem, a unidade de interpre- dição 180 pode usar a informação de movimento para o bloco vizinho como informação de movimento para o bloco atual. No modo de salto, ao contrário do modo de mesclagem, nenhum sinal residual pode ser transmitido. No modo de predição de vetor de movimento (MVP), o vetor de movimento do bloco vizinho pode ser usado como um preditor de vetor de movimento e uma diferença de vetor de movimento pode ser sinalizada, indicando assim o vetor de movimento do bloco atual.
[069] O sinal de predição gerado por meio da unidade de interpredição 180 ou unidade de intrapredição 185 pode ser usado para gerar um sinal reconstruído ou um sinal residual.
[070] A unidade de transformada 120 pode aplicar um esquema de transformada ao sinal residual, gerando coeficientes de transformada. Por exemplo, o esquema de transformada pode incluir pelo menos uma de uma transformada discreta de cosseno (DCT), transformada discreta de seno (DST), transformada de Karhunen-Loeve (KLT), transformada baseada em gráfico (GBT) ou transformada condicionalmente não linear (CNT). A GBT significa uma transformada obtida a partir de um gráfico no qual informação para a relação entre pixels é representada. A CNT significa uma transformada que é obtida com base na geração de um sinal de predição usando todos os pixels reconstruídos anteriormente. Além disso, o processo de transformada pode se aplicar a blocos de pixels quadrados com o mesmo tamanho ou também pode se aplicar a blocos não quadrados de tamanho variável.
[071] A unidade de quantização 130 pode quantizar coeficientes de transformada e transmitir os coeficientes de transformada quantizados para a unidade de codificação de entropia 190, e a unidade de codificação de entropia 190 pode codificar o sinal quantizado (informação para os coeficientes de transformada quantiza- dos) e enviar o sinal codificado em um fluxo de bits. A informação para os coeficientes de transformada quantizados pode ser referida como informação residual. A unidade de quantização 130 pode reclassificar os coeficientes de transformada quanti- zados em forma de bloco na forma de um vetor unidimensional, com base em uma ordem de varredura de coeficiente e gerar a informação para os coeficientes de transformada quantizados com base na forma unidimensional de coeficientes de transformada quantizados. A unidade de codificação de entropia 190 pode realizar vários métodos de codificação, tais como, por exemplo, Golomb exponencial, codificação de comprimento variável adaptativa de contexto (CAVLC) ou codificação aritmética binária adaptativa de contexto (CABAC). A unidade de codificação de entropia 190 pode codificar os valores de pedaços de informação (por exemplo, elemen-tos de sintaxe) necessários para reconstruir o vídeo/imagem, junto com ou separadamente dos coeficientes de transformada quantizados. A informação codificada (por exemplo, informação de vídeo/imagem) pode ser transmitida ou armazenada na forma de um fluxo de bits, em uma base de unidade de camada de abstração por rede (NAL). O fluxo de bits pode ser transmitido pela rede ou armazenado no meio de armazenamento digital. A rede pode incluir, por exemplo, uma rede de transmissão e/ou rede de comunicação, e o meio de armazenamento digital pode incluir, por exemplo, USB, SD, CD, DVD, Blu-ray, HDD, SSD ou outras várias mídias de armazenamento. Um transmissor (não mostrado) para transmitir e/ou uma unidade de armazenamento (não mostrada) que armazena, o sinal emitido da unidade de codificação de entropia 190 pode ser configurado como um elemento interno/externo do aparelho de codificação 100, ou o transmissor pode ser um componente da unidade de codificação de entropia 190.
[072] Os coeficientes de transformada quantizados que saem da unidade de quantização 130 podem ser usados para gerar o sinal de predição. Por exemplo, o sinal residual pode ser reconstruído aplicando quantização inversa e transformada inversa nos coeficientes de transformada quantizados por meio da unidade de quan- tização inversa 140 e unidade de transformada inversa 150 no loop. O somador 155 pode adicionar o sinal residual reconstruído à saída do sinal de predição da unidade de interpredição 180 ou unidade de intrapredição 185, gerando assim o sinal reconstruído (gravura reconstruída, bloco reconstruído ou matriz de amostra reconstruída). Como no caso em que o modo de salto é aplicado, quando não há resíduo para o bloco alvo para processamento, o bloco predito pode ser usado como o bloco re- construído. O somador 155 pode ser denotado um reconstrutor ou gerador de bloco reconstruído. O sinal reconstruído pode ser usado para intrapredição do próximo bloco de processamento de alvo na gravura atual e, conforme descrito abaixo, ser filtrado e então usado para interpredição da próxima gravura.
[073] A unidade de filtragem 160 pode melhorar a qualidade da imagem sub- jetiva/objetiva aplicando filtragem ao sinal reconstruído. Por exemplo, a unidade de filtragem 160 pode gerar uma gravura reconstruída modificada aplicando vários métodos de filtragem à gravura reconstruída e transmitir a gravura reconstruída modificada para o armazenador temporário de gravura de decodificação 170. Os vários métodos de filtragem podem incluir, por exemplo, filtragem de desbloqueio, desvio adaptativo de amostra, filtro de malha adaptativo ou filtro bilateral. A unidade de filtragem 160 pode gerar várias informações para filtrar e transferir a informação resultante para a unidade de codificação de entropia 190, conforme descrito abaixo em conexão com cada método de filtragem. A informação relacionada à filtragem pode ser codificada pela unidade de codificação de entropia 190 e ser gerada na forma de um fluxo de bits.
[074] A gravura reconstruída modificada transmitida ao armazenador temporário de gravura de decodificação 170 pode ser usada como a gravura de referência na unidade de interpredição 180. O aparelho de codificação 100, quando a interpre- dição é aplicada desse modo, pode evitar uma incompatibilidade de predição entre o aparelho de codificação 100 e o aparelho de decodificação 200 e aumentar a eficiência de codificação.
[075] O armazenador temporário de gravura de decodificação 170 pode armazenar a gravura reconstruída modificada para uso como gravura de referência na unidade de interpredição 180.
[076] FIG. 3 é um diagrama de blocos que ilustra esquematicamente um aparelho de decodificação para decodificar sinais de vídeo de acordo com uma mo- dalidade da divulgação.
[077] Com referência à FIG. 3, um aparelho de decodificação 200 pode incluir uma unidade de decodificação de entropia 210, uma unidade de quantização inversa 220, uma unidade de transformada inversa 230, um somador 235, uma unidade de filtragem 240, uma memória 250, uma unidade de interpredição 260 e uma unidade de intrapredição 265. A unidade de interpredição 260 e a unidade de intra- predição 265 podem ser referidas coletivamente como um preditor. Em outras palavras, o preditor pode incluir a unidade de interpredição 180 e a unidade de intrapre- dição 185. A unidade de quantização inversa 220 e a unidade de transformada inversa 230 podem ser referidas coletivamente como um processador residual. Em outras palavras, o processador residual pode incluir a unidade de quantização inversa 220 e a unidade de transformada inversa 230. A unidade de decodificação de entropia 210, a unidade de quantização inversa 220, a unidade de transformada inversa 230, o somador 235, a unidade de filtragem 240, a unidade de interpredição 260 e a unidade de intrapredição 265 podem ser configuradas em um único componente de hardware (por exemplo, um decodificador ou processador) de acordo com uma modalidade. O armazenador temporário de decodificação de gravura 250 pode ser implementado como um único componente de hardware (por exemplo, uma memória ou meio de armazenamento digital) de acordo com uma modalidade. A memória 250 pode incluir o DPB 175 e ser configurada do meio de armazenamento digital.
[078] Quando um fluxo de bits incluindo informação de vídeo/imagem é inserido, o aparelho de decodificação 200 pode reconstruir a imagem correspondente ao processo de informação de vídeo/imagem no aparelho de codificação 100 da FIG. 2. Por exemplo, o aparelho de decodificação 200 pode realizar a decodificação usando a unidade de processamento aplicada no aparelho de codificação 100. Assim, após a decodificação, a unidade de processamento pode ser, por exemplo, uma unidade de codificação, e a unidade de codificação pode ser separada da unidade de árvore de codificação ou unidade de codificação maior, de acordo com a estrutura de árvore quádrupla e/ou estrutura de árvore binária. O sinal de imagem reconstruído decodificado e emitido através do aparelho de decodificação 200 pode ser reproduzido por meio de um reprodutor.
[079] O aparelho de decodificação 200 pode receber o sinal emitido do aparelho de codificação 100 da FIG. 2, na forma de um fluxo de bits, e o sinal recebido pode ser decodificado por meio da unidade de decodificação de entropia 210. Por exemplo, a unidade de decodificação de entropia 210 pode analisar o fluxo de bits e extrair informação (por exemplo, informação de vídeo/imagem) necessária para reconstrução de imagem (ou reconstrução de gravura). Por exemplo, a unidade de decodificação de entropia 210 pode decodificar a informação no fluxo de bits com base em um método de codificação, como codificação Golomb exponencial, CAVLC ou CABAC e pode emitir os valores dos elementos de sintaxe necessários para a reconstrução da imagem e valores quantizados dos coeficientes de transformada em relação ao residual. Especificamente, o método de decodificação de entropia CABAC pode receber um compartimento correspondente a cada elemento de sintaxe no fluxo de bits, determinar um modelo de contexto usando informação do elemento de sintaxe alvo de decodificação, informação de decodificação para bloco alvo de decodificação e vizinho ou informação para o símbolo/compartimento decodificado na etapa anterior, predizer a probabilidade de ocorrência de um compartimento de acordo com o modelo de contexto determinado, e realizar a decodificação aritmética do compartimento. Neste momento, após determinar o modelo de contexto, o método de decodificação de entropia CABAC pode atualizar o modelo de contexto usando informação para o símbolo/ compartimento decodificado para o modelo de contexto do próximo símbolo/ compartimento. Entre a informação decodificada pela unidade de decodificação de entropia 210, a informação para predição pode ser provida ao preditor (por exemplo, a unidade de interpredição 260 e a unidade de intra- predição 265), e o valor residual de entropia decodificado pela unidade de decodifi- cação de entropia 210, isto é, os coeficientes de transformada quantizados e a informação relevante do processador podem ser inseridos na unidade de quantização inversa 220. Entre as peças de informação decodificada pela unidade de decodifica- ção de entropia 210, a informação para filtragem pode ser provida para a unidade de filtragem 240. Enquanto isso, um receptor (não mostrado) para receber o sinal emitido do aparelho de codificação 100 pode ainda ser configurado como um elemento interno/externo do aparelho de decodificação 200 ou o receptor pode ser um componente da unidade de decodificação de entropia 210.
[080] A unidade de quantização inversa 220 pode quantizar inversamente os coeficientes de transformada quantizados e emitir os coeficientes de transformada. A unidade de quantização inversa 220 pode reclassificar os coeficientes de transformada quantizados na forma de um bloco bidimensional. Neste caso, a reclassifica- ção pode ser realizada com base na ordem de varredura de coeficiente na qual o aparelho de codificação 100 executou. A unidade de quantização inversa 220 pode quantizar inversamente os coeficientes de transformada quantizados usando parâmetros de quantização (por exemplo, informação de tamanho da etapa de quantiza- ção), obtendo coeficientes de transformada.
[081] A unidade de transformada inversa 230 pode emitir o sinal residual (bloco residual ou matriz de amostra residual) aplicando uma transformada inversa nos coeficientes de transformada.
[082] O preditor pode realizar predição no bloco atual e gerar um bloco predito incluindo amostras de predição para o bloco atual. O preditor pode determinar qual de intrapredição ou interpredição é aplicada ao bloco atual com base na informação para predição emitida da unidade de decodificação de entropia 210 e determinar um modo de intra/interpredição específico.
[083] A unidade de intrapredição 265 pode predizer o bloco atual referenci- ando as amostras na gravura atual. As amostras referenciadas podem ser vizinhas ou posicionadas longe do bloco atual, dependendo do modo de predição. Na intra- predição, os modos de predição podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. A unidade de intrapredição 265 pode determinar o modo de predição aplicado ao bloco atual usando o modo de predição aplicado ao bloco vizinho.
[084] A unidade de interpredição 260 pode derivar um bloco predito para o bloco atual, com base em um bloco de referência (matriz de amostra de referência) especificado por um vetor de movimento na gravura de referência. Aqui, para reduzir a quantidade de informação de movimento transmitida no modo de interpredição, a informação de movimento pode ser predita por bloco, sub-bloco ou amostra com base na correlação na informação de movimento entre o bloco vizinho e o bloco atual. A informação de movimento pode incluir o vetor de movimento e um índice de gravura de referência. A informação de movimento pode ainda incluir informação para a direção de interpredição (predição de L0, predição de L1 ou predição de Bi). No caso de interpredição, os blocos vizinhos podem incluir um bloco vizinho espacial presente na gravura atual e um bloco vizinho temporal presente na gravura de referência. Por exemplo, a unidade de interpredição 260 pode construir uma lista de candidatos de informação de movimento com base nos blocos vizinhos e derivar o vetor de movimento e/ou índice de gravura de referência do bloco atual com base na informação de seleção de candidatos recebida. A interpredição pode ser realizada com base em vários modos de predição. A informação para predição pode incluir informação que indica o modo de interpredição para o bloco atual.
[085] O somador 235 pode adicionar o sinal residual obtido ao sinal de predição (por exemplo, bloco predito ou matriz de amostra de predição) emitido da unidade de interpredição 260 ou unidade de intrapredição 265, gerando assim o sinal reconstruído (gravura reconstruída, bloco reconstruído, ou matriz de amostra recons- truída). Como no caso em que o modo de salto é aplicado, quando não há resíduo para o bloco de destino para processamento, o bloco predito pode ser usado como o bloco reconstruído.
[086] O somador 235 pode ser denotado um reconstrutor ou gerador de bloco reconstruído. O sinal reconstruído gerado pode ser usado para intrapredição do próximo bloco de processamento de alvo na gravura atual e, conforme descrito abaixo, ser filtrado e então usado para interpredição da próxima gravura.
[087] A unidade de filtragem 240 pode melhorar a qualidade da imagem sub- jetiva/objetiva, aplicando filtragem ao sinal reconstruído. Por exemplo, a unidade de filtragem 240 pode gerar uma gravura reconstruída modificada aplicando vários métodos de filtragem à gravura reconstruída e transmitir a gravura reconstruída modificada para o armazenador temporário de decodificação de gravura 250. Os vários métodos de filtragem podem incluir, por exemplo, filtragem de desbloqueio, deslocamento adaptativo de amostra (SAO), filtro de malha adaptativa (ALF) ou filtro bilateral.
[088] A gravura reconstruída modificada transmitida para o armazenador temporário de gravura de decodificação 250 pode ser usada como a gravura de referência pela unidade de interpredição 260.
[089] Na divulgação, as modalidades descritas acima em conexão com a unidade de filtragem 160, a unidade de interpredição 180 e a unidade de intrapredi- ção 185 do aparelho de codificação 100 podem ser aplicadas, da mesma maneira que, ou para corresponder a, a unidade de filtragem 240, a unidade de interpredição 260 e a unidade de intrapredição 265 do aparelho de decodificação.
[090] FIG. 4 é uma vista que ilustra uma estrutura de um sistema de fluxo contínuo de conteúdo de acordo com uma modalidade da divulgação.
[091] O sistema de fluxo contínuo de conteúdo ao qual a divulgação é aplicada pode incluir amplamente um servidor de codificação 410, um servidor web 430, armazenamento de mídia 440, um dispositivo de usuário 450 e um dispositivo de entrada multimídia 460.
[092] O servidor de codificação 410 pode comprimir a entrada de conteúdo de dispositivos de entrada multimídia, como smartphones, câmeras ou filmadoras, em dados digitais, gerar um fluxo de bits e transmitir o fluxo de bits para o servidor de fluxo 420. Por exemplo, quando a multimídia os próprios dispositivos de entrada 460, como smartphones, câmeras ou filmadoras, geram um fluxo de bits, o servidor de codificação 410 pode ser omitido.
[093] O fluxo de bits pode ser gerado por um método de codificação ou geração de fluxo de bits ao qual a divulgação é aplicada e o servidor de fluxo 420 pode armazenar temporariamente o fluxo de bits durante a transmissão ou recepção do fluxo de bits.
[094] O servidor de fluxo contínuo 420 pode transmitir dados de multimídia para o dispositivo de usuário 450 com base em uma solicitação de usuário através do servidor web 430, e o servidor web 430 desempenha uma função como um agente para notificar o usuário quais serviços são providos. Quando o usuário envia uma solicitação de um serviço desejado para o servidor da web 430, o servidor da web 430 transfere a solicitação para o servidor de fluxo contínuo 420 e o servidor de fluxo contínuo 420 transmite dados de multimídia para o usuário. O sistema de fluxo contínuo de conteúdo pode incluir um servidor de controle separado, caso em que o servidor de controle controla comandos/respostas entre os dispositivos no sistema de fluxo contínuo de conteúdo.
[095] O servidor de fluxo contínuo 420 pode receber conteúdo do armazenamento de mídia 440 e/ou do servidor de codificação 410. Por exemplo, o servidor de fluxo contínuo 420 pode receber, em tempo real, o conteúdo do servidor de codificação 410. Neste caso, para fornecer o serviço sem interrupção, o servidor de fluxo contínuo 420 pode armazenar o fluxo de bits por um tempo predeterminado.
[096] Por exemplo, exemplos do dispositivo de usuário 450 podem incluir telefones celulares, telefones inteligentes, laptops, terminais de transmissão digital, assistentes pessoais digitais (PDAs), reprodutores portáteis de multimídia (PMPs), dispositivos de navegação, slate PCs, tablet PCs, ultrabooks, dispositivos usáveis, como relógios inteligentes, óculos ou monitores montados na cabeça (HMDs), TVs digitais, computadores desktop ou dispositivos de sinalização digital.
[097] No sistema de fluxo contínuo de conteúdo, os servidores podem ser servidores distribuídos, caso em que os dados recebidos por cada servidor podem ser distribuídos e processados.
[098] FIG. 5 é um diagrama de blocos que ilustra um dispositivo exemplar para processar sinais de vídeo de acordo com uma modalidade da divulgação. O dispositivo de processamento de sinal de vídeo da FIG. 5 pode corresponder ao aparelho de codificação 100 da FIG. 2 ou o aparelho de decodificação 200 da FIG. 3
[099] De acordo com uma modalidade da divulgação, o dispositivo de processamento de sinal de vídeo 500 pode incluir uma memória 520 para armazenar sinais de vídeo e um processador 510 acoplado com a memória para processar sinais de vídeo.
[0100] De acordo com uma modalidade da divulgação, o processador 510 pode ser configurado como pelo menos um circuito de processamento para processar sinais de vídeo e pode executar instruções para codificar ou decodificar sinais de vídeo para, desse modo, processar sinais de vídeo. Em outras palavras, o processador 510 pode codificar sinais de vídeo ou decodificar sinais de vídeo codificados executando métodos de codificação ou decodificação descritos abaixo.
[0101] De acordo com uma modalidade da divulgação, o processador 510 pode ser configurado como pelo menos um circuito de processamento para processar sinais de imagem e pode executar instruções para codificar ou decodificar sinais de imagem para, desse modo, processar sinais de imagem. Em outras palavras, o processador 510 pode codificar dados de imagem brutos ou decodificar sinais de imagem codificados executando métodos de codificação ou decodificação descritos acima.
[0102] FIGS. 6A, 6B, 6C e 6D são vistas que ilustram estruturas de divisão de blocos exemplares por árvore quádrupla (QT), árvore binária (BT), árvore ternária (TT) e árvore assimétrica (AT), respectivamente, de acordo com uma modalidade de divulgação.
[0103] Na codificação de vídeo, um bloco pode ser dividido com base na QT. Um sub-bloco dividido pela QT pode ainda ser dividido recursivamente pela QT. O bloco de folha que não é mais dividido pela QT pode ser dividido por pelo menos um esquema de BT, TT ou AT. A BT pode ter dois tipos de divisão, como BT horizontal (2NxN, 2NxN) e BT vertical (Nx2N, Nx2N). A TT pode ter dois tipos de divisão, como TT horizontal (2Nx1/2N, 2NxN, 2Nx1/2N) e TT vertical (1/2Nx2N, Nx2N, 1/2Nx2N). A AT pode ter quatro tipos de divisão, como AT horizontal para cima (2Nx1/2N, 2Nx3/2N), AT horizontal para baixo (2Nx3/2N, 2Nx1/2N), AT vertical esquerda (1/2Nx2N, 3/2Nx2N) e AT vertical direita (3/2Nx2N, 1/2Nx2N). A BT, TT e AT cada uma pode ser dividida recursivamente usando a BT, TT e AT.
[0104] [103] FIG. 6A mostra um exemplo de divisão QT. O bloco A pode ser dividido em quatro sub-blocos (A0, A1, A2, A3) pela QT. O sub-bloco A1 pode ser dividido novamente em quatro sub-blocos (B0, B1, B2, B3) pela QT.
[0105] FIG. 6B mostra um exemplo de divisão BT. O bloco B3, que não é mais dividido pela QT, pode ser dividido em BT vertical (C0, C1) ou BT horizontal (D0, D1). Como o bloco C0, cada sub-bloco pode ser ainda dividido recursivamente, por exemplo, na forma de BT horizontal (E0, E1) ou BT vertical (F0, F1).
[0106] FIG. 6C mostra um exemplo de divisão TT. O bloco B3, que não é mais dividido pela QT, pode ser dividido em TT vertical (C0, C1, C2) ou TT horizontal (D0, D1, D2). Como o bloco C1, cada sub-bloco pode ser ainda dividido recursiva- mente, por exemplo, na forma de TT horizontal (E0, E1, E2) ou TT vertical (F0, F1, F2).
[0107] FIG. 6D mostra um exemplo de divisão AT. O bloco B3, que não é mais dividido pela QT, pode ser dividido em AT vertical (C0, C1) ou AT horizontal (D0, D1). Como o bloco C1, cada sub-bloco pode ser ainda dividido recursivamente, por exemplo, na forma de AT horizontal (E0, E1) ou TT vertical (F0, F1).
[0108] Enquanto isso, as BT, TT e AT podem ser usadas juntas para a divisão. Por exemplo, o sub-bloco dividido pela BT pode ser dividido pela TT ou AT. Além disso, o sub-bloco dividido pelo TT pode ser dividido pela BT ou AT. O sub- bloco dividido pela AT pode ser dividido pela BT ou TT. Por exemplo, depois de dividido pela BT horizontal, cada sub-bloco pode ser dividido pela BT vertical ou, depois dividido pela BT vertical, cada sub-bloco pode ser dividido pela BT horizontal. Nesse caso, embora diferentes ordens de divisão sejam aplicadas, a forma final após a divisão pode ser idêntica.
[0109] Quando um bloco é dividido, várias ordens de busca do bloco podem ser definidas. Geralmente, uma busca é realizada da esquerda para a direita ou de cima para baixo. A busca por um bloco pode significar a ordem de determinar se cada sub-bloco deve ser adicionalmente dividido ou, se o bloco não for mais dividido, a ordem de codificação de cada sub-bloco ou a ordem de busca quando o sub-bloco faz referência a outro bloco vizinho.
[0110] FIGS. 7 e 8 ilustram um procedimento de codificação de ví- deo/imagem baseado em interpredição e uma unidade de interpredição em um aparelho de codificação de acordo com uma modalidade da divulgação.
[0111] O aparelho de codificação 100 realiza interpredição no bloco atual (S710). O aparelho de codificação 100 pode derivar o movimento i e modo de inter- predição do bloco atual e gerar amostras de predição do bloco atual. Aqui, a determinação do modo de interpredição, derivação da informação de movimento e gera- ção das amostras de predição podem ser realizadas simultaneamente, ou qualquer uma pode ser realizada mais cedo do que as outras. Por exemplo, a unidade de in- terpredição 180 do aparelho de codificação 100 pode incluir uma unidade de determinação de modo de predição 181, uma unidade de derivação de informação de movimento 182 e uma unidade de derivação de amostra de predição 183. A unidade de determinação de modo de predição 181 pode determinar o modo de predição para o bloco atual, a unidade de derivação de informação de movimento 182 pode derivar a informação de movimento para o bloco atual e a unidade de derivação de amostra de predição 183 pode derivar as amostras de predição do bloco atual. Por exemplo, a unidade de interpredição 180 do aparelho de codificação 100 pode buscar um bloco semelhante ao bloco atual em uma área predeterminada (área de busca) de gravuras de referência via estimação de movimento e derivar um bloco de referência com a diferença mínima ou uma diferença predeterminada ou menos do bloco atual. Com base nisso, o índice de gravura de referência que indica a gravura de referência onde o bloco de referência está posicionado pode ser derivado e o vetor de movimento pode ser derivado com base na diferença de posição entre o bloco de referência e o bloco atual. O aparelho de codificação 100 pode determinar o modo aplicado ao bloco atual entre vários modos de predição. O aparelho de codificação 100 pode comparar os custos de RD para os vários modos de predição e determinar o modo de predição ideal para o bloco atual.
[0112] Por exemplo, quando o modo de salto ou o modo de mesclagem se aplica ao bloco atual, o aparelho de codificação 100 pode construir uma lista de candidatos à mesclagem descrita abaixo e derivar um bloco de referência, que tem a diferença mínima ou uma diferença predeterminada ou menos do bloco atual entre os blocos de referência indicados pelos candidatos à mesclagem incluídos na lista de candidatos à mesclagem. Neste caso, o candidato à mesclagem associado ao bloco de referência derivado pode ser selecionado, e a informação de índice de mesclagem indicando o candidato à mesclagem selecionado pode ser gerada e sinalizada para o aparelho de decodificação 200. A informação de movimento para o bloco atual pode ser derivada usando a informação de movimento para o candidato à mesclagem selecionado.
[0113] A título de exemplo, quando o modo (A)MVP se aplica ao bloco atual, o aparelho de codificação 100 pode construir uma lista de candidatos a (A)MVP e usar o vetor de movimento do Candidato a MVP selecionado entre o preditor de vetor de movimento (MVP) incluídos na lista de candidatos a (A)MVP como o MVP do bloco atual. Neste caso, por exemplo, o vetor de movimento indicando o bloco de referência derivado da estimação de movimento descrita acima pode ser usado como o vetor de movimento do bloco atual e o Candidato a MVP tendo o vetor de movimento com a menor diferença do vetor de movimento do bloco atual entre os candidatos a MVP pode ser o candidato a MVP selecionado. A diferença do vetor de movimento (MVD) que é o vetor de movimento do bloco atual menos o MVP pode ser derivada. Neste caso, a informação para o MVD pode ser sinalizada para o aparelho de decodificação 200. Além disso, quando o modo (A)MVP se aplica, o valor do índice de gravura de referência pode ser configurado como informação de índice de gravura de referência e ser sinalizado separadamente para o aparelho de decodi- ficação 200.
[0114] O aparelho de codificação 100 pode derivar amostras residuais com base em amostras de predição (S720). O aparelho de codificação 100 pode derivar amostras residuais por meio da comparação entre as amostras brutas do bloco atual e as amostras de predição.
[0115] O aparelho de codificação 100 codifica informação de imagem, incluindo a informação de predição e informação residuais (S730). O aparelho de codificação 100 pode emitir a informação de imagem codificada na forma de um fluxo de bits. A informação de predição pode incluir informação de movimento e informação de modo de predição (por exemplo, sinalizador de salto, sinalizador de mesclagem ou índice de modo), como informação relacionada ao procedimento de predição. A informação de movimento pode incluir informação de seleção de candidato (por exemplo, índice de mesclagem, sinalizador de mvp ou índice de mvp), que são in-formações para derivar o vetor de movimento. Além disso, a informação de movimento pode incluir informação para o MVD descrito acima e/ou informação de índice de gravura de referência. A informação de movimento pode incluir informação que indicam se a predição L0, predição L1 ou predição bi se aplica. A informação residual é informação para amostras residuais. A informação residual pode incluir informação para coeficientes de transformada quantizados para as amostras residuais.
[0116] O fluxo de bits de saída pode ser armazenado em um meio de armazenamento (digital) e transferido para o aparelho de decodificação ou pode ser transferido para o aparelho de decodificação através da rede.
[0117] Enquanto isso, conforme estabelecido acima, o aparelho de codificação pode gerar uma gravura reconstruída (incluindo amostras reconstruídas e bloco reconstruído) com base nas amostras de referência e nas amostras residuais. Isto é para o aparelho de codificação 100 derivar o mesmo resultado de predição que aquele obtido pelo aparelho de decodificação 200 e a eficiência de codificação pode ser aumentada desse modo. Assim, o aparelho de codificação 100 pode armazenar a gravura reconstruída (ou amostras reconstruídas ou bloco reconstruído) na memória e usar o mesmo que a gravura de referência para interpredição. Conforme descrito acima, por exemplo, a filtragem de malha interna pode ainda ser realizada na gravura reconstruída.
[0118] FIGS. 9 e 10 ilustram um procedimento de decodificação de ví- deo/imagem baseado em interpredição e uma unidade de interpredição em um aparelho de decodificação de acordo com uma modalidade da divulgação.
[0119] O aparelho de decodificação 200 pode realizar operações correspon- dentes às operações realizadas pelo aparelho de codificação 100. O aparelho de decodificação 200 pode realizar predição no bloco atual com base na informação de predição recebidas e derivar amostras de predição.
[0120] Especificamente, o aparelho de decodificação 200 pode determinar o modo de predição para o bloco atual com base na informação de predição recebida (S910). O aparelho de decodificação 200 pode determinar qual modo de interpredi- ção se aplica ao bloco atual com base na informação do modo de predição na informação de predição.
[0121] Por exemplo, o aparelho de decodificação 200 pode determinar qual dos modos de mesclagem ou modo (A)MVP é aplicado ao bloco atual com base na sinalizador de mesclagem. Ou o aparelho de decodificação 200 pode selecionar um dentre vários candidatos a modo de interpredição com base no índice de modo. Os candidatos ao modo de interpredição podem incluir o modo de salto, modo de mes- clagem e/ou modo (A)MVP ou outros vários modos de interpredição descritos abaixo.
[0122] O aparelho de decodificação 200 deriva a informação de movimento para o bloco atual com base no modo de interpredição determinado (S920). Por exemplo, quando o modo de ignorar ou modo de mesclagem se aplica ao bloco atual, o aparelho de decodificação 200 pode construir uma lista de candidatos de mes- clagem descrita abaixo e selecionar um dentre os candidatos de mesclagem incluídos na lista de candidatos de mesclagem. A seleção do candidato à mesclagem pode ser realizada com base no índice de mesclagem. A informação de movimento para o bloco atual pode ser derivada da informação de movimento para o candidato à mesclagem selecionado. A informação de movimento para o candidato à mescla- gem selecionado pode ser usada como informação de movimento para o bloco atual.
[0123] A título de exemplo, quando modo (A)MVP se aplica ao bloco atual, o aparelho de decodificação 200 pode construir uma lista de candidatos a (A)MVP e usar o vetor de movimento do candidato a MVP selecionado entre os candidatos MVP incluídos no lista de candidatos a (A)MVP como o MVP do bloco atual. A seleção do MVP pode ser realizada com base na informação de seleção descrita acima (sinalizador de MVP ou índice doe MVP). Neste caso, o aparelho de decodificação 200 pode derivar o MVD do bloco atual com base na informação para o MVD e derivar o vetor de movimento do bloco atual com base no MVD e MVP do bloco atual. Além disso, o aparelho de decodificação 200 pode derivar o índice de gravura de referência do bloco atual com base na informação de índice de gravura de referência. A gravura indicada pelo índice de gravura de referência na lista de gravura de referência para o bloco atual pode ser derivada como a gravura de referência referenciada para interpredição do bloco atual.
[0124] Enquanto isso, conforme descrito abaixo, a informação de movimento para o bloco atual pode ser derivada sem configurar uma lista de candidatos, caso em que a informação de movimento para o bloco atual pode ser derivada de acordo com um procedimento iniciado no modo de predição descrito abaixo. Neste caso, a configuração da lista de candidatos descrita acima pode ser omitida.
[0125] O aparelho de decodificação 200 pode gerar amostras de predição para o bloco atual com base na informação de movimento para o bloco atual (S930). Neste caso, o aparelho de decodificação 200 pode derivar a gravura de referência com base no índice de gravura de referência do bloco atual e derivar amostras de predição do bloco atual usando as amostras do bloco de referência indicado pelo vetor de movimento do bloco atual na gravura de referência. Neste caso, a filtragem de amostra de predição pode ainda ser realizada em todas ou algumas das amostras de predição do bloco atual de acordo com os casos, conforme descrito abaixo.
[0126] Por exemplo, a unidade de interpredição 260 do aparelho de decodifi- cação 200 pode incluir uma unidade de determinação de modo de predição 261, uma unidade de derivação de informação de movimento 262 e uma unidade de deri- vação de amostra de predição 263. A unidade de determinação de modo de predição 181 pode determinar o modo de predição para o bloco atual com base na informação de modo de predição recebida, a unidade de derivação de informação de movimento 182 pode derivar a informação de movimento (vetor de movimento e/ou índice de gravura de referência) para o bloco atual com base na informação para a informação de movimento recebida, e a unidade de derivação de amostra de predição 183 pode derivar as amostras de predição do bloco atual.
[0127] O aparelho de decodificação 200 gera amostras residuais para o bloco atual com base na informação residual recebida (S940). O aparelho de decodifi- cação 200 pode gerar amostras reconstruídas para o bloco atual com base nas amostras de predição e amostras residuais e, com base nisso, gerar a gravura reconstruída (S950). Depois disso, a filtragem de malha interna pode ainda ser realizada na gravura reconstruída como descrito acima.
[0128] Conforme descrito acima, o procedimento de interpredição pode incluir as etapas de determinar um modo de interpredição, derivando informação de movimento de acordo com o modo de predição determinado e realizando predição com base na informação de movimento derivadas (gerando amostras de predição).
[0129] Vários modos de interpredição podem ser usados para predizer o bloco atual na gravura. Por exemplo, o modo de mesclagem, o modo de salto, o modo MVP e o modo afim podem ser usados. O modo de refinamento de vetor de movimento lateral do decodificador (DMVR) e o modo de resolução de vetor de movimento adaptativo (AMVR) podem ser usados posteriormente como modos adicionais. O modo afim também pode ser referido como modo de predição de movimento afim. O modo MVP também pode ser referido como modo de predição de vetor de movimento avançado (AMVP).
[0130] A informação do modo de predição indicando o modo de interpredição do bloco atual pode ser sinalizada do aparelho de codificação para o aparelho de decodificação 200. A informação do modo de predição pode ser incluída em um fluxo de bits e ser recebida pelo aparelho de decodificação 200. O modo de predição a informação podem incluir índice informação indicando um dos vários modos candidatos. Ou o modo de interpredição pode ser indicado por meio de sinalização hierárquica de informação de sinalizador. Neste caso, a informação do modo de predição pode incluir um ou mais sinalizadores. Por exemplo, o aparelho de codificação 100 pode sinalizar um sinalizador de salto para indicar se deve aplicar o modo de salto e, quando o modo de salto não é aplicado, sinalizar um sinalizador de mesclagem para indicar se deve aplicar o modo de mesclagem e, quando o modo de mesclagem não for aplicado, indicar para aplicar o modo MVP ou sinalizar mais um sinalizador para discernimento adicional. O modo afim pode ser sinalizado como um modo indepen-dente ou como um modo dependente do modo de mesclagem ou modo MVP. Por exemplo, o modo afim pode ser configurado como um candidato em uma lista de candidatos à mesclagem ou lista de candidatos a MVP conforme descrito abaixo.
[0131] O aparelho de codificação 100 ou aparelho de decodificação 200 pode realizar interpredição usando a informação de movimento para o bloco atual. O aparelho de codificação 100 pode derivar a informação de movimento ideal para o bloco atual por meio de um procedimento de estimação de movimento. Por exemplo, o aparelho de codificação 100 pode buscar blocos de referência semelhantes com uma alta correlação, dentro de um intervalo de busca predeterminado na gravura de referência, em uma base de pixel por fracionário, usando os blocos brutos na gravura bruta para o bloco atual e, com base nisso, derivar informação de movimento. A semelhança de um bloco pode ser derivada com base na diferença entre os valores de amostra baseados em fase. Por exemplo, a similaridade do bloco pode ser calculada com base na soma das diferenças absolutas (SAD) entre o bloco atual (ou o modelo do bloco atual) e o bloco de referência (ou o modelo do bloco de referência). Neste caso, a informação de movimento pode ser derivada com base no bloco de referência com a menor SAD na área de busca. A informação de movimento derivada pode ser sinalizada para o aparelho de decodificação com base no modo de in- terpredição, por vários métodos.
[0132] Quando o modo de mesclagem se aplica, a informação de movimento para o bloco de predição atual não são transmitidas diretamente, mas sim derivadas usando a informação de movimento para seus blocos de predição vizinhos. Assim, o aparelho de codificação 100 pode indicar a informação de movimento para o bloco de predição atual transmitindo informação de sinalizador indicando que o modo de mesclagem foi usado e um índice de mesclagem indicando qual bloco de predição vizinho foi usado.
[0133] O aparelho de codificação 100 precisa procurar blocos candidatos a mesclagem usados para derivar a informação de movimento para o bloco de predição atual, de modo a cumprir o modo de mesclagem. Por exemplo, até cinco blocos candidatos à mesclagem podem ser usados, mas as modalidades da divulgação não são limitadas aos mesmos. O número máximo de blocos candidatos à mesclagem pode ser transmitido no cabeçalho da fatia, mas as modalidades da divulgação não são limitadas aos mesmos. Depois de descobrir os blocos candidatos à fusão, o aparelho de codificação 100 pode gerar uma lista de candidatos à fusão e, entre eles, selecionar o bloco candidato à fusão com o menor custo como o bloco candidato à fusão final.
[0134] Várias modalidades para blocos de candidatos à mesclagem que constituem uma lista de candidatos à mesclagem são descritas neste documento.
[0135] A lista de candidatos à mesclagem pode usar, por exemplo, cinco blocos de candidatos à mesclagem. Por exemplo, quatro candidatos à mesclagem espacial e um candidato à mesclagem temporal podem ser usados.
[0136] Um método para configurar uma lista de gravura de referência para a interpredição acima descrita é descrito abaixo.
[0137] Uma sintaxe de alto nível (HLS) existe no sistema de codificação de vídeo para controlar um compartilhamento geral de informação comum. A HLS visa a gerenciar quadros para reduzir a contagem de bits, permitindo o uso eficiente da memória. A HLS usa um sistema de gerenciamento de gravura de referência que invoca um processo denotado de marcação de gravura de referência. Este processo rotula cada quadro de acordo com a usabilidade para decodificação do quadro atual. Projetar e implementar a HLS visa a ter um meio simplificado e eficiente de identificar as gravuras necessárias para a decodificação da gravura atual.
Modalidade 1
[0138] Nesta modalidade, um sistema de gerenciamento de lista de gravura de referência (RPL) é introduzido, o qual é diretamente sinalizado e derivado. Duas listas (por exemplo, Lista de gravura de referência0 e Lista de gravura de referên- cia1) são usadas. A informação para derivar as duas listas de gravuras de referência são sinalizadas como elementos de sintaxe nos cabeçalhos de fatia, conjunto de parâmetros de sequência (SPS) e conjunto de parâmetros de gravura (PPS). As duas listas são geradas em todos os tipos de fatias. No entanto, enquanto a fatia I não usa nenhuma da informação das listas, a fatia P usa informação apenas da List0 e a fatia B usa informação de ambas as listas. As gravuras são identificadas usando números de contagem de ordem de gravura (POC). Cada gravura pode ser classificada como gravura de referência de longo prazo (LTRP) ou gravura de referência de curto prazo (STRP). As gravuras classificadas como LTRPs ou STRPs simbolizam que são gravuras ativas e podem ser usadas durante a decodificação, e gravuras inativas são aquelas não usadas durante um processo de decodificação.
[0139] FIG. 11 é um fluxograma que ilustra um exemplo de construção de uma lista de gravura de referência de acordo com uma modalidade da divulgação. As operações da FIG. 11 podem ser realizadas pelo aparelho de decodificação 200.
[0140] FIG. 11 ilustra uma parte frontal de um processo de configuração de lista de gravura de referência. Primeiro, na etapa S1105, o aparelho de decodifica- ção 200 analisa o número total de entradas na lista. Então, para cada entrada, a gravura é marcada como LTRP ou STRP por meio de um processo de marcação de gravura de referência (S1120). Nesta divulgação, a marcação de uma gravura significa adicionar ou atualizar informação (parâmetro) relacionada à gravura. Especifi-camente, o aparelho de decodificação 200 inicializa o índice de entrada (i) (S1110) e, quando o índice de entrada (i) é igual ou menor que o número total de entradas (S1115), realiza a marcação de gravura de referência (S1120). Quando a marcação da gravura de referência está completa, o aparelho de decodificação atualiza o índice de entrada (i) (S1125). De acordo com uma modalidade da divulgação, uma arquitetura totalmente nova é proposta para aprimorar o sistema de gerenciamento de gravuras de referência.
[0141] FIGS. 12 e 13 são fluxogramas que ilustram um exemplo de marcação de gravuras de referência de acordo com uma modalidade da divulgação.
Figure img0001
[0142] A Tabela 1 mostra um exemplo de sintaxe configurando uma lista de gravura de referência. Aqui, a presente modalidade provê uma estrutura capaz de gerenciar a gravura de referência. A função ref_pic_list_struct recebe listIdx indicado com rpl1_same_as_rpl0_flag, como uma primeira entrada. Em outras palavras, quando o sinalizador (rpl1_same_as_rpl0_flag) é verdadeiro, isso denota que as listas são idênticas e uma lista (L0 ou L1) pode ser inferida da outra (L1 ou L0). Uma segunda entrada rplsIdx da função ref_pic_list_struct denota o número de listas de gravuras de referência usadas na sequência de vídeo codificada especificada no SPS. num_ref_entries denota o número de entradas em ref_pic_list_struct (listIdx, rpIsIdx). Quando quadros LRTP são usados para cada entrada, o sinalizador é analisado da lista para ler se o quadro é tratado como LTRP ou STRP. Quando a entrada é do STRP e é a primeira entrada de STRP na estrutura de sintaxe ref_pic_list_struct (listIdx, rpIsIdx), isso denota a diferença absoluta entre a POC da gravura atual e a POC da gravura referenciada pela i-ésima entrada ou, a menos a i- ésima entrada é uma STRP, mas não a primeira, isso indica a diferença absoluta entre a POC da gravura referenciada pela i-ésima entrada e a POC da gravura indicada pela STRP anterior. (Se a entrada for uma STRP, é a primeira entrada de STRP na estrutura de sintaxe ref_pic_list_struc (listIdx, rpIsIdx) e ela especifica a diferença absoluta em POC da gravura atual e a gravura referida pela i-ésima entrada ou quando a i-ésima entrada é uma entrada de STRP, mas não a primeira entrada, então ela especifica a diferença absoluta entre a POC da gravura referida pela i- ésima entrada e pela STRP anterior). Quando o abs_delta_poc da i-ésima entrada é maior que 0, um sinalizador que marca a informação do código para a STRP é sina-lizado. No entanto, quando st_ref_pic_flag é 0, a i-ésima entrada denota uma gravura de referência de longo prazo. As LTRPs são sinalizadas pelo bit menos significativo de POC (LSB).
[0143] Os elementos de sintaxe relacionados à Tabela 1 podem ser definidos da seguinte forma:
[0144] num_ref_entries [listIdx] [rplsIdx] denota o número de entradas na estrutura de sintaxe ref_pic_list_struct (listIdx, rplsIdx). num_ref_entries [listIdx] [rplsIdx] pode ter um valor de 0 a sps_max_dec_pic_buffering_minus1 + 14.
[0145] Quando rpl1_same_as_rpl0_flag é 1, as estruturas de sintaxe num_ref_pic_lists_in_sps [1] e ref_pic_list_struct (1, rplsIdx) estão ausentes e o seguinte se aplica.
[0146] - num_ref_pic_lists_in_sps [1] é inferido como tendo o mesmo valor que num_ref_pic_lists_in_sps [0].
[0147] - Em ref_pic_list_struct (1, rplsIdx), o valor de cada elemento de sintaxe é inferido como idêntico ao valor do elemento de sintaxe em ref_pic_list_struct (0, rplsIdx) para rplsIdx que pode ser um valor de 0 a num_ref_pic_lists_in_sps [ 0] - 1.
[0148] Quando long_term_ref_pics_flag é 0, isso denota que a LTRP não é usada para interpredição de qualquer gravura codificada na sequência de vídeo codificada (CVS). Quando long_term_ref_pics_flag é 1, isso denota que a LTRP é usada para interpredição de uma ou mais gravuras codificadas na CVS.
[0149] Quando st_ref_pic_flag [listIdx] [rplsIdx] [i] é 1, a i-ésima entrada na estrutura de sintaxe ref_pic_list_struct (listIdx, rplsIdx) é uma entrada de STRP. Quando st_ref_pic_flag [listIdx] [rplsIdx] [i] é 0, a i-ésima entrada na estrutura de sin-taxe ref_pic_list_struct (listIdx, rplsIdx) é uma entrada de LTRP. A menos que presente, o valor de st_ref_pic_flag [listIdx] [rplsIdx] [i] é inferido como 1.
[0150] abs_delta_poc_st [listIdx] [rplsIdx] [i] denota a diferença absoluta no valor de contagem de ordem de gravura entre as gravuras referenciadas pela i- ésima entrada e a gravura atual quando a i-ésima entrada é a primeira STRP na estrutura de sintaxe ref_pic_list_struct (listIdx, rplsIdx) ou a diferença absoluta no valor de contagem da ordem das gravuras entre as gravuras pela STRP anterior na estrutura de sintaxe ref_pic_list_struct (listIdx, rplsIdx) e a i-ésima entrada, a menos que a i-ésima entrada seja uma STRP, mas não a primeira, entrada na estrutura de sintaxe ref_pic_list_struct (listIdx, rplsIdx).
[0151] abs_delta_poc_st [listIdx] [rplsIdx] [i] tem um valor de 0 a 215-1.
[0152] Quando strp_entry_sign_flag [listIdx] [rplsIdx] [i] é 1, isso denota que a i-ésima entrada na estrutura de sintaxe ref_pic_list_struct (listIdx, rplsIdx) tem um valor igual ou maior que 0. Quando strp_entry_signsign_flag [listIdx] ] [i] é 0, isso denota que a i-ésima entrada na estrutura de sintaxe ref_pic_list_struct (listIdx, rplsIdx) tem um valor menor que 0. A menos que presente, o valor de strp_entry_sign_flag [i] [j] é inferido como sendo 1.
[0153] poc_lsb_lt [listIdx] [rplsIdx] [i] denota o módulo de contagem de ordem de gravura MaxPicOrderCntLsb da gravura referenciada pela i-ésima entrada no ref_pic_list_struct (listIdx, rplsIdx). O comprimento de poc_lsb_lt [listIdx] [rplsIdx] [i] é log2_max_pic_order_cnt_lsb_minus4 + 4 bits.
[0154] As descrições acima dos elementos de sintaxe podem ser resumidas como na Tabela 2 abaixo:
Figure img0002
[0155] Com referência à FIG. 12, o aparelho de decodificação 200 identifica se a LTRP é usada na entrada da lista de gravura de referência por long_term_ref_pics_flag (S1205) e, quando a LTRP é usada (quando long_term_ref_pics_flag é 1), analisa st_ref_pic_flag (S1210) e identifica se st_ref_pic_flag é verdadeiro (S1215) ) Quando st_ref_pic_flag é true (1) (isto é, quando a entrada atual é da STRP), o aparelho de decodificação 200 analisa abs_delta_poc_st. Em outras palavras, quando a entrada atual corresponde a uma entrada de STRP, o aparelho de decodificação 200 obtém a diferença de POC entre a gravura relacionada à entrada atual e a gravura anterior.
[0156] Quando long_term_ref_pics_flag é falso na etapa S1205, o aparelho de decodificação analisa abs_delta_poc_st imediatamente. Depois disso, o aparelho de decodificação 200 identifica se abs_delta_poc_st é maior do que 0 (S1225) e, quando abs_delta_poc_st é maior do que 0, analisa strp_entry_sign_flag (S1230).
[0157] Quando st_ref_pic_flag é falso (0) na etapa S1215, o aparelho de de- codificação 200 analisa poc_lsb_lt (S1235). Em outras palavras, quando a entrada atual corresponde a uma entrada de LTRP, o aparelho de decodificação 200 obtém o valor do módulo de POC da gravura relacionada à entrada atual. O valor do módulo de POC da gravura é usado para derivar o valor POC da gravura e pode ser combinado com o bit mais significativo de POC (MSB) para assim derivar o valor POC da gravura.
[0158] O processo acima descrito de configuração de uma lista de gravura de referência pode ser representado em dois blocos, como mostrado na FIG. 13. As operações de cada bloco podem ser implementadas pelo mesmo hardware ou por diferentes peças de hardware. O aparelho de decodificação 200 pode obter o sinalizador (long_term_ref_pic_flag) indicando se a gravura de referência de longo prazo é usada e o número de entradas (num_ref_entries) (1310) e determinar se cada entrada é uma entrada de LTRP ou STRP (1320).
Modalidade 2
[0159] Nesta modalidade, é proposto limitar o parâmetro num_ref_entries descrito acima em conexão com a Tabela 1. Normalmente, num_ref_entries [listIdx] [rpIsIdx] denota o número de entradas em ref_pic_list_struct (listIdx, rpIsIdx). É identificado que num_ref_entries pode ter um valor de 0 a sps_max_dec_pic_buffering_minus1 + 14. Para usar menos quadros, o intervalo de num_ref_entries pode ser limitado. O pior cenário surge quando mais 14 quadros são exigidos do que o valor indicado por sps_max_dec_pic_buffering_minus1. Isso significa que o armazenador temporário de decodificação de gravuras deve ter me- mória suficiente para armazenar tantos quadros. Em vez de fazer isso, impor um limite aos grupos hierárquicos de estruturas (GOPs) pode ser adotado considerando o temporalId (ID temporal) da camada.
[0160] A sintaxe adicional pode ser definida como mostrado na Tabela 3. sps_max_dec_pic_buffering_minus1 mais 1, como a unidade do armazenador temporário de armazenamento de gravura, denota o tamanho máximo necessário de um armazenador temporário de gravura de decodificação na CVS. sps_max_dec_pic_buffering_minus1 pode ter um valor de 0 a MaxDpbSize - 1 e MaxDpbSize pode ser definido separadamente.
Figure img0003
[0161] Em outras palavras, o número de entradas na lista de gravura de referência pode ter o valor máximo como o tamanho máximo necessário do armazena- dor temporário de gravura decodificada adicional 14. Além disso, de acordo com a presente modalidade (modalidade 2), o número de entradas na lista de gravura de referência pode ter o valor máximo como o tamanho máximo necessário do armaze- nador temporário de gravuras decodificadas.
Modalidade 3
[0162] Na presente modalidade, um método de remoção do elemento de sintaxe long_term_ref_pics_flag de ref_pic_list_struct (listIdx, rpIsIdx) é proposto. Quando o elemento de sintaxe (long_term_ref_pics_flag é 0, isso denota que a LTRP não é mais usada para interpredição de qualquer gravura codificada na CVS. Quando long_term_ref_pics_flag é 1, isso denota que a LTRP é usada para inter- predição de um ou mais códigos codificados filtros na CVS. Ao remover o elemento de sintaxe long_term_ref_pics_flag, pode-se inferir que a LTRP é usada, como padrão, na CVS. Isso é útil porque os LTRPs geralmente são gravuras altamente confiáveis no DPB.
Modalidade 4
[0163] FIG. 14 é um fluxograma que ilustra outro exemplo de marcação de gravuras de referência de acordo com uma modalidade da divulgação.
[0164] Outra modalidade para ref_pic_list_struct (listIdx, rpIsIdx) é provida. Em particular, ref_pic_list_struct (listIdx, rpIsIdx) pode ser configurado considerando quando a LTRP e a STRP são sinalizadas separadamente. Isso pode ser apresentado como na Tabela 4 abaixo. Aqui, de acordo com uma modalidade da divulgação, é provido um método para limitar num_strp_entries [listIdx] [rpIsIdx], que indica o número total de STRPs usadas, e num_ltrp_entries [listIdx] [rpIsIdx], que indica o número total de LTRPs.
[0165] FIG. 14 ilustra uma visão geral da estrutura proposta em que a contagem de LTRP e a contagem de STRP são sinalizadas separadamente. Aqui, as contagens de STRP e de LTRP são primeiro analisadas usando a LTRP de acordo com long_term_ref_pics_flag. Depois disso, para cada entrada, lt_ref_pic_flag é analisado, o que indica se a gravura é uma LTRP. Quando lt_ref_pic_flag é verdadeiro, a contagem de LTRP aumenta. Caso contrário, a contagem de STRP aumenta. Quando lt_ref_pic_flag é falso, a STRP é identificada analisando delta_poc_st e sua informação de codificação (quando delta_poc_st é maior que 0). Caso contrário, a LTRP é identificada pela POC de LSB.
[0166] A Tabela 4 abaixo mostra um exemplo de sintaxe para configurar uma lista de gravura de referência de acordo com uma modalidade. [Tabela 4]
Figure img0004
[0167] num_strp_entries [listIdx] [rplsIdx] denota o número de entradas de STRP em ref_pic_list_struct (listIdx, rplsIdx).
[0168] num_ltrp_entries [listIdx] [rplsIdx] denota o número de entradas de LTRP em ref_pic_list_struct (listIdx, rplsIdx).
[0169] Quando lt_ref_pic_flag [listIdx] [rplsIdx] está ausente, o valor lt_ref_pic_flag [listIdx] [rplsIdx] é inferido da seguinte maneira.
[0170] Quando num_ltrp_entries [listIdx] [rplsIdx] é 0, o valor (lt_ref_pic_flag [listIdx] [rplsIdx]) é inferido como 0. Caso contrário, é inferido como quando numLtrps (o número de LTRPs) é igual a num_ltrp_entries [ listIdx] [rplsIdx] e como 0 quando numStrps (o número de STRPs) é igual a num_strp_entries [listIdx] [rplsIdx].
Figure img0005
Figure img0006
[0171] Com referência à FIG. 14, o aparelho de decodificação 200 começa a construir uma lista de referência (S1405) e analisa o número de entradas de STRP (num_strp_entries) (S1410). O aparelho de decodificação identifica se a LTRP é usada (S1415) e, quando a LTRP é usada, analisa o número de LTRPs (num_ltrp_entries) (S1420). O aparelho de decodificação 200 inicializa a variável i, numLtrps e numStrps para 0 (S1425), determina se a variável i é igual ou menor que o número de entradas (num_ref_entires) (S1430) e, quando i é igual ou menor que o número de entradas (num_ref_entires) executa uma operação de marcação de gravura de referência (S1435) e atualiza i (S1440).
[0172] FIG. 15 é um fluxograma que ilustra um exemplo de processamento de sinais de vídeo de acordo com uma modalidade da divulgação. As operações da FIG. 15 podem ser realizadas pelo aparelho de decodificação 200.
[0173] Na etapa S1510, o aparelho de decodificação 200 constrói uma lista de gravura de referência da gravura atual em um sinal de vídeo. O aparelho de de- codificação 200 obtém a diferença de POC (por exemplo, abs_delta_poc_st) entre a gravura relacionada à primeira entrada e a gravura anterior quando a primeira entra- da da lista de gravura de referência corresponde a uma entrada de STRP e, quando a segunda entrada da lista de gravura de referência corresponde a uma entrada de LTRP, obtém o valor do módulo de POC (por exemplo, poc_lsb_lt) da gravura relacionada à segunda entrada.
[0174] De acordo com uma modalidade, no processo de configuração da lista de gravura de referência, o aparelho de decodificação 200 pode obter o número de entradas (num_ref_entries) na lista de gravura de referência e realizar a marcação de gravuras de referência com LTRP ou STRP em cada entrada no lista de gravura de referência tantas vezes quanto o número de entradas.
[0175] De acordo com uma modalidade, o número máximo de entradas pode ser o tamanho máximo necessário do armazenador temporário de gravura de deco- dificação adicional 14 (por exemplo, sps_max_dec_pic_buffering_minus1 + 14) ou o tamanho máximo necessário do armazenador temporário de gravura de decodifica- ção (por exemplo, sps_max_dec_pic_buffering_minus1).
[0176] De acordo com uma modalidade, no processo de realização de marcação de gravura de referência, o aparelho de decodificação 200 pode obter o número de entradas de STRP (por exemplo, num_strp_entries) e o número de entradas de LTRP (por exemplo, num_ltrp_entries) como mostrado na Tabela 4, realizar a marcação STRP tantas vezes quanto o número de STRPs e a marcação LTRP tantas vezes quanto o número de entradas de LTRP.
[0177] De acordo com uma modalidade, no processo de configuração da lista de gravura de referência, o aparelho de decodificação 200 pode obter um primeiro sinalizador e determinar se a entrada na lista de gravura de referência é uma entrada de STRP ou LTRP com base no primeiro sinalizador. Por exemplo, o aparelho de decodificação 200 pode determinar se a entrada atual é uma entrada de STRP ou LTRP usando a sinalizador (por exemplo, st_ref_pic_flag) indicando se a gravura relacionada à entrada atual corresponde à STRP.
[0178] De acordo com uma modalidade, a diferença de POC denota o valor absoluto da POC da gravura anterior menos a POC da gravura relacionada à primeira entrada. Quando o valor absoluto (diferença de POC absoluta) (por exemplo, abs_delta_poc_st) é maior do que 0, o aparelho de decodificação 200 pode obter um segundo sinalizador (por exemplo, strp_entry_sign_flag) indicando o sinal da diferença de POC.
[0179] Na etapa S1520, o aparelho de decodificação 200 realiza predição na gravura atual usando a lista de gravura de referência. Por exemplo, o aparelho de decodificação 200 pode gerar amostras de predição usando o valor de amostra indicado pelo vetor de movimento na gravura de referência incluída na primeira lista de gravura de referência (L0) ou na segunda lista de gravura de referência (L1).
[0180] As modalidades da divulgação proveem um método e dispositivo para codificar a informação necessária para a construção de uma lista de gravura de referência. O aparelho de codificação 100 pode construir uma lista de gravura de referência e realizar predição usando a gravura de referência na lista de gravura de referência.
[0181] Além disso, para cada entrada na lista de gravura de referência, o aparelho de codificação 100 pode codificar informação para configurar a lista de gravura de referência, por entrada. Por exemplo, a informação para configurar a lista de gravura de referência inclui a diferença (por exemplo, abs_delta_poc_st) em POC entre a gravura correspondente à STRP e a gravura anterior e inclui o valor do módulo de POC (por exemplo, poc_lsb_lt) da gravura correspondente à LTRP.
[0182] O aparelho de codificação 100 pode incluir um primeiro sinalizador (por exemplo, st_ref_pic_flag) para indicar se a gravura da entrada na lista de gravura de referência é da STRP ou LTRP na informação para configurar a lista de gravura de referência e realizar a codificação. Além disso, quando a diferença de POC (^1, abs_delta_poc_st) é maior do que 0, um segundo sinalizador (por exemplo, strp_entry_sign_flag) pode ser incluído para indicar o sinal da diferença de POC. A informação para configurar a lista de gravura de referência pode ser incluída no SPS, PPS ou cabeçalho de fatia e ser sinalizada.
[0183] Os métodos de processamento aos quais as modalidades da divulgação são aplicadas podem ser produzidos na forma de um programa executado em computadores e podem ser armazenados em uma mídia de gravação legível por computador. Dados multimídia com a estrutura de dados de acordo com a divulgação também podem ser armazenados em mídia de gravação legível por computador. A mídia de gravação legível por computador inclui todos os tipos de dispositivos de armazenamento e dispositivos de armazenamento distribuído que podem armazenar dados legíveis por computador. A mídia de gravação legível por computador pode incluir, por exemplo, discos Blu-ray (BDs), unidades de barramento serial universal (USB), ROMs, PROMs, EPROMs, EEPROMs, RAMs, CD-ROMs, fitas magnéticas, disquetes e dados ópticos armazenar. A mídia de gravação legível por computador pode incluir mídia implementada na forma de ondas de portadora (por exemplo, transmissões pela Internet). Os fluxos de bits gerados pelo método de codificação podem ser armazenados em mídia de gravação legível por computador ou transmitidos por meio de uma rede de comunicação com/sem fio.
[0184] As modalidades da divulgação podem ser implementadas como programas de computador por códigos de programa que podem ser executados em computadores de acordo com uma modalidade da divulgação. Os códigos de computador podem ser armazenados em uma portadora legível por computador.
[0185] Dispositivos de decodificação e aparelhos de codificação aos quais as modalidades da divulgação são aplicadas podem incluir dispositivos digitais. Os dispositivos digitais abrangem todos os tipos ou tipos de dispositivos digitais capazes de realizar pelo menos um dentre transmissão, recepção, processamento e saída de, por exemplo, dados, conteúdo ou serviços. O processamento de dados, conteú- do ou serviços por um dispositivo digital inclui a codificação e/ou decodificação dos dados, conteúdo ou serviços. Tal dispositivo digital pode ser emparelhado ou conectado a outro dispositivo digital ou a um servidor externo por meio de uma rede com fio/sem fio, transmitindo ou recebendo dados ou, conforme necessário, convertendo dados.
[0186] Os dispositivos digitais podem incluir, por exemplo, TVs em rede, TVs híbridas de banda larga, TVs inteligentes, televisões de protocolo de internet (IP- TVs), computadores pessoais ou outros dispositivos fixos ou dispositivos móveis ou portáteis, como assistentes digitais pessoais (PDAs), smartphones, tablets ou laptops. Na divulgação, uma TV digital na FIG. 31 e um dispositivo móvel na FIG. 30 são considerados dispositivos digitais exemplares para fins ilustrativos.
[0187] Conforme usado neste documento, "rede com fio/sem fio" refere-se coletivamente a redes de comunicação que suportam vários padrões ou protocolos de comunicação para comunicação de dados e/ou conexão mútua entre dispositivos digitais ou entre um dispositivo digital e um servidor externo. Essas redes com fio/sem fio podem incluir redes de comunicação atualmente suportadas ou a serem suportadas no futuro e protocolos de comunicação para tais redes de comunicação e podem ser formadas por, por exemplo, padrões de comunicação para conexão com fio, incluindo USB (Barramento Serial Universal), CVBS (Sinc de banco de Vídeo Composto), componente, S-vídeo (analógico), DVI (Interface Visual Digital), HDMI (Interface Multimídia de Alta Definição), RGB ou D-SUB e padrões de comunicação para conexão sem fio, incluindo Bluetooth, RFID (Identificação de Radiofrequência), IrDA (Associação de Dados Infravermelhos), UWB (Banda Ultralarga), ZigBee, DLNA (Aliança para Rede Domésticas Digitais), WLAN (LAN Sem fio) (Wi-Fi), Wibro (Banda Ampla Sem Fio), Wimax (Interoperabilidade de Rede para Acesso por Microondas), HSDPA (Acesso a Pacote de Downlink de Alta Velocidade), LTE (Evolução de Longo Prazo) ou Wi-Fi Direto.
[0188] As modalidades descritas acima consideram combinações predeterminadas dos componentes e recursos da divulgação. Cada componente ou recurso deve ser considerado opcional, a menos que seja explicitamente mencionado de outra forma. Cada componente ou recurso pode ser praticado de forma a não ser combinado com outros componentes ou recursos. Além disso, alguns componentes e/ou recursos podem ser combinados para configurar uma modalidade da divulgação. A ordem das operações descritas em conexão com as modalidades da divulgação pode ser variada. Alguns componentes ou recursos em uma modalidade podem ser incluídos em outra modalidade ou podem ser substituídos por componentes ou recursos correspondentes da outra modalidade. É óbvio que as reivindicações podem ser combinadas para constituir uma modalidade, a menos que explicitamente declarado de outra forma ou tais combinações podem ser adicionadas em novas reivindicações por uma emenda após o depósito.
[0189] Quando implementada em firmware ou hardware, uma modalidade da divulgação pode ser implementada como um módulo, procedimento ou função realizando as funções ou operações descritas acima. O código do software pode ser armazenado em uma memória e conduzido por um processador. A memória pode ser posicionada dentro ou fora do processador para trocar dados com o processador por vários meios conhecidos.
[0190] É evidente para aqueles versados na técnica que a divulgação pode ser incorporada em outras formas específicas sem se afastar dos recursos essenciais da divulgação. Assim, a descrição acima deve ser interpretada não como limitativa em todos os aspectos, mas como exemplar. O escopo da divulgação deve ser determinado por interpretações razoáveis das reivindicações anexas e todos os equivalentes da divulgação pertencem ao escopo da divulgação. [Disponibilidade Industrial]
[0191] As modalidades preferidas da divulgação acima descritas foram pro vidas para fins de ilustração, e será facilmente apreciado por um versado na técnica que várias alterações ou alterações podem ser feitas nas mesmas ou podem adicionar ou ser substituídas por outras modalidades, sem se afastar do espírito técnico e do escopo da divulgação, conforme definido nas reivindicações anexas.

Claims (15)

1. Método para decodificar um sinal de vídeo por um dispositivo usando uma interpredição CARACTERIZADO pelo fato de que compreende: construir uma lista de gravuras (pictures) de referência de uma gravura atual no sinal de vídeo; e realizar uma predição para a gravura atual com base na lista de gravuras de referência; em que a construção da lista de gravuras de referência compreende: obter um número de entradas da lista de gravuras de referência; e realizar uma marcação de gravura de referência para cada uma das entradas da lista de gravuras de referência como uma gravura de referência de curto prazo (STRP) ou uma gravura de referência de longo prazo (LTRP) pelo número de entradas, em que realizar a marcação de gravura de referência compreende: com base no fato de que uma primeira entrada da lista de gravuras de referência corresponde à STRP, obter uma diferença de contagem de ordem de gravura (POC) entre uma gravura de referência relacionada à primeira entrada e outra gravura; e com base no fato de que a segunda entrada da lista de gravuras de referência corresponde a LTRP, obter um valor de módulo de POC de uma gravura relacionada a segunda entrada; e em que o número de entradas tem um valor máximo como um tamanho requerido máximo de um armazenador temporário (buffer) de gravura decodificada mais 14.
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a marcação de gravura de referência compreende adicionalmente: obter um número de entradas de STRP e entradas de LTRP; e realizar uma marcação STRP pelo número de entradas de STRP e realizar uma marcação LTRP pelo número de entradas LTRP.
3. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a construção da lista de gravura de referência compreende: obter um primeiro sinalizador (flag) indicando se uma entrada da lista de gravura de referência corresponde à entrada de STRP; e determinar se a entrada da lista de gravura de referência corresponde a uma entrada de STRP ou uma entrada de LTRP com base no primeiro sinalizador.
4. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a diferença de POC é um valor absoluto de uma POC da outra gravura menos uma POC da gravura de referência relacionada com a primeira entrada.
5. Método, de acordo com a reivindicação 4, CARACTERIZADO pelo fato de que a construção da lista de gravuras de referência compreende: com base no valor absoluto ser maior que 0, obter um segundo sinalizador indicando um sinal da diferença de POC.
6. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que outra gravura é a gravura atual com base no fato de que a primeira entrada é uma primeira STRP na marcação de gravura de referência, ou outra gravura é uma STRP anterior na lista de gravuras de referência com base no fato de que a primeira entrada não é a primeira STRP na marcação da gravura de referência.
7. Método para codificar um sinal de vídeo por um dispositivo usando inter- predição, CARACTERIZADO pelo fato de que compreende: construir uma lista de gravura de referência de uma gravura atual no sinal de vídeo; e codificar informação de código para construir a lista de gravura de referência, em que a informação de codificação para construir a lista de gravuras de referência compreende uma diferença de contagem de ordem de gravura (POC) entre uma gravura de referência relacionada à uma primeira entrada e outra gravura na lista de gravuras de referência e um módulo de POC de uma gravura relacionada à segunda entrada na lista de gravuras de referência, em que a informação de código para construir a lista de gravuras de referência compreende ainda um número de entradas da lista de gravuras de referência, e em que o número de entradas tem um valor máximo como um tamanho requerido máximo de um armazenador temporário (buffer) de gravura decodificada mais 14.
8. Método, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que a informação de código para construir a lista de gravuras de referência compreende adicionalmente um primeiro sinalizador que indica se uma entrada da lista de gravuras de referência corresponde a uma entrada de gravura de referência de curto prazo (STRP).
9. Método, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que a informação de código para construir a lista de gravura de referência compreende adicionalmente um segundo sinalizador indicando um sinal da diferença de POC para uma entrada na qual a diferença de POC é maior que 0.
10. Método, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que a informação de código para construir a lista de gravuras de referência está incluída em um conjunto de parâmetros de sequência (SPS), conjunto de parâmetros de gravura (PPS) ou cabeçalho de fatia em um fluxo de bits relacionado ao sinal de vídeo.
11. Método, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que outra gravura é a gravura atual com base no fato de que a primeira entrada é uma primeira STRP na informação de código, ou outra gravura é uma STRP anterior na lista de gravuras de referência com base no fato de que a primeira entrada não é a primeira STRP na informação de codificação.
12. Aparelho para decodificação de sinal de vídeo, CARACTERIZADO pelo fato de que compreende: uma memória para armazenar o sinal de vídeo; e um processador acoplado a memória; em que o processador é configurado para: construir uma lista de gravuras de referência de uma gravura atual no sinal de vídeo; e realizar uma predição para a gravura atual com base na lista de gravuras de referência, em que, para construir a lista de gravuras de referência, o processador é configurado para: obter um número de entradas da lista de gravuras de referência; e realizar uma marcação de gravura de referência para cada uma das entradas da lista de gravuras de referência como uma gravura de referência de curto prazo (STRP) ou uma gravura de referência de longo prazo (LTRP) pelo número de entradas; em que, para realizar a marcação de gravura de referência, o processador é configurado para: com base no fato de que uma primeira entrada da lista de gravuras de referência corresponde a STRP, obter uma diferença de contagem de ordem de gravuras (POC) entre uma gravura de referência relacionada à primeira entrada e outra gravura; e com base no fato de que uma segunda entrada da lista de gravuras de referência corresponde a LTRP, obter um valor de módulo de POC de uma gravura de referência relacionada à segunda entrada, e em que o número de entradas tem um valor máximo como um tamanho requerido máximo de um armazenador temporário (buffer) de gravura decodificada mais 14.
13. Aparelho, de acordo com a reivindicação 12, CARACTERIZADO pelo fato de que outra gravura é a gravura atual com base no fato de que a primeira entrada é uma primeira STRP na marcação de gravura de referência, ou outra gravura é uma STRP anterior na lista de gravuras de referência com base no fato de que a primeira entrada não é a primeira STRP na marcação da gravura de referência.
14. Meio legível por computador não transitório para armazenar uma ou mais instruções CARACTERIZADO pelo fato de que as uma ou mais instruções são executáveis por um ou mais processadores para controlar o dispositivo de processamento de sinal de vídeo para: construir uma lista de gravuras (pictures) de referência de uma gravura atual no sinal de vídeo; e realizar uma predição para a gravura atual com base na lista de gravuras de referência, em que, para construir a lista de gravuras de referência, as uma ou mais instruções executáveis pelos um ou mais processadores controlam o dispositivo de processamento de sinal de vídeo para: obter um número de entradas da lista de gravuras de referência; e realizar uma marcação de gravura de referência para cada uma das entradas da lista de gravuras de referência como uma gravura de referência de curto prazo (STRP) ou uma gravura de referência de longo prazo (LTRP) pelo número de entradas; em que para realizar a marcação de gravura de referência, as uma ou mais instruções executáveis por um ou mais processadores controlam o dispositivo de processamento de sinal de vídeo para: com base no fato de que uma primeira entrada da lista de gravuras de referência corresponde a STRP, obter uma diferença de contagem de ordem de gravuras (POC) entre uma gravura relacionada à primeira entrada e outra gravura; e com base no fato de que uma segunda entrada da lista de gravuras de referência corresponde a LTRP, obter um valor de módulo de POC de uma gravura relacionada à segunda entrada.
15. Meio legível por computador não transitório, de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que outra gravura é a gravura atual com base no fato de que a primeira entrada é uma primeira STRP na marcação de gravura de referência, ou outra gravura é uma STRP anterior na lista de gravuras de referência com base no fato de que a primeira entrada não é a primeira STRP na marcação da gravura de referência.
BR112021013071-3A 2019-01-02 2020-01-02 Métodos e aparelho para decodificar e codificar um sinal de vídeo por um dispositivo e meio legível por computador não transitório BR112021013071B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201962787384P 2019-01-02 2019-01-02
US62/787,384 2019-01-02
PCT/KR2020/000032 WO2020141889A1 (ko) 2019-01-02 2020-01-02 화면간 예측을 사용하여 비디오 신호를 처리하기 위한 방법 및 장치

Publications (2)

Publication Number Publication Date
BR112021013071A2 BR112021013071A2 (pt) 2021-09-21
BR112021013071B1 true BR112021013071B1 (pt) 2022-05-10

Family

ID=71406751

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021013071-3A BR112021013071B1 (pt) 2019-01-02 2020-01-02 Métodos e aparelho para decodificar e codificar um sinal de vídeo por um dispositivo e meio legível por computador não transitório

Country Status (11)

Country Link
US (4) US11044468B2 (pt)
EP (1) EP3742733A4 (pt)
JP (2) JP7184911B2 (pt)
KR (4) KR102619088B1 (pt)
CN (3) CN111903134B (pt)
AU (1) AU2020205179B2 (pt)
BR (1) BR112021013071B1 (pt)
CA (2) CA3219866A1 (pt)
MX (1) MX2021007711A (pt)
RU (1) RU2769347C1 (pt)
WO (1) WO2020141889A1 (pt)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
MX2021002950A (es) * 2018-09-12 2021-07-21 Huawei Tech Co Ltd Un codificador de video, un decodificador de video y metodos correspondientes.
CN112740705A (zh) * 2018-09-21 2021-04-30 夏普株式会社 用于在视频编码中发送信号通知参考图片的系统和方法
CN111903134B (zh) 2019-01-02 2023-09-12 Lg电子株式会社 通过使用帧间预测来处理视频信号的方法和装置
US20230089594A1 (en) * 2021-09-17 2023-03-23 Tencent America LLC Joint motion vector difference coding
WO2023056357A1 (en) * 2021-09-29 2023-04-06 Bytedance Inc. Method, device, and medium for video processing
WO2024010370A1 (ko) * 2022-07-05 2024-01-11 엘지전자 주식회사 양방향 인터 예측에 기반한 영상 부호화/복호화 방법, 비트스트림을 전송하는 방법 및 비트스트림을 저장한 기록 매체
WO2024010372A1 (ko) * 2022-07-05 2024-01-11 엘지전자 주식회사 Amvpmerge 모드에 기반한 영상 부호화/복호화 방법, 장치 및 비트스트림을 저장하는 기록 매체

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8325616B2 (en) * 2008-01-17 2012-12-04 Broadcom Corporation Method and system for determination and exchange of network timing information
EP4017006B1 (en) 2011-09-22 2023-09-20 LG Electronics, Inc. Method and apparatus for signaling image information, and decoding method and apparatus using same
US9131245B2 (en) * 2011-09-23 2015-09-08 Qualcomm Incorporated Reference picture list construction for video coding
US10003817B2 (en) 2011-11-07 2018-06-19 Microsoft Technology Licensing, Llc Signaling of state information for a decoded picture buffer and reference picture lists
US9432665B2 (en) * 2011-12-02 2016-08-30 Qualcomm Incorporated Coding least significant bits of picture order count values identifying long-term reference pictures
US9578326B2 (en) * 2012-04-04 2017-02-21 Qualcomm Incorporated Low-delay video buffering in video coding
CN104412588B (zh) * 2012-07-01 2018-06-08 夏普株式会社 用于在参数集中发信号通知长期参考图片的设备
US9167248B2 (en) * 2012-07-13 2015-10-20 Qualcomm Incorporated Reference picture list modification for video coding
US9584825B2 (en) * 2012-09-27 2017-02-28 Qualcomm Incorporated Long-term reference picture signaling in video coding
US20140140406A1 (en) 2012-11-16 2014-05-22 General Instrument Corporation Devices and methods for processing of non-idr related syntax for high efficiency video coding (hevc)
KR101701120B1 (ko) * 2012-11-21 2017-02-01 엘지전자 주식회사 영상 디코딩 방법 및 이를 이용하는 장치
WO2015053120A1 (ja) 2013-10-08 2015-04-16 シャープ株式会社 画像復号装置、画像復号方法、画像符号化装置、及び画像符号化方法
CN111903134B (zh) * 2019-01-02 2023-09-12 Lg电子株式会社 通过使用帧间预测来处理视频信号的方法和装置

Also Published As

Publication number Publication date
MX2021007711A (es) 2021-08-05
CN117176944A (zh) 2023-12-05
AU2022252845A1 (en) 2022-11-17
WO2020141889A1 (ko) 2020-07-09
US11570429B2 (en) 2023-01-31
KR20230034425A (ko) 2023-03-09
BR112021013071A2 (pt) 2021-09-21
CA3125551A1 (en) 2020-07-09
RU2022107813A (ru) 2022-04-05
KR102504741B1 (ko) 2023-03-02
JP7482344B2 (ja) 2024-05-14
AU2020205179A1 (en) 2021-09-02
KR20240005992A (ko) 2024-01-12
KR102398936B1 (ko) 2022-05-17
JP2023015383A (ja) 2023-01-31
CN111903134A (zh) 2020-11-06
EP3742733A4 (en) 2021-03-31
US20200374512A1 (en) 2020-11-26
US20230362354A1 (en) 2023-11-09
US20230118101A1 (en) 2023-04-20
US20210266526A1 (en) 2021-08-26
KR102619088B1 (ko) 2023-12-29
CN117156127A (zh) 2023-12-01
US11805246B2 (en) 2023-10-31
CA3219866A1 (en) 2020-07-09
AU2020205179B2 (en) 2022-07-14
KR20220051414A (ko) 2022-04-26
CN111903134B (zh) 2023-09-12
RU2769347C1 (ru) 2022-03-30
KR20200085848A (ko) 2020-07-15
EP3742733A1 (en) 2020-11-25
JP2021515464A (ja) 2021-06-17
US11044468B2 (en) 2021-06-22
JP7184911B2 (ja) 2022-12-06
CA3125551C (en) 2023-12-19

Similar Documents

Publication Publication Date Title
BR112021013071B1 (pt) Métodos e aparelho para decodificar e codificar um sinal de vídeo por um dispositivo e meio legível por computador não transitório
TW201838415A (zh) 在視訊寫碼中判定用於雙邊濾波之鄰近樣本
US20220182614A1 (en) Method and apparatus for processing video signal
BR112016027428B1 (pt) Inicialização de paleta de preditor em codificação de vídeo com base em paleta
BR112014017159B1 (pt) Conjuntos de parâmetros de codificação e cabeçalhos de unidade nal para codificação de vídeo
US11962756B2 (en) Method and apparatus for processing video data
BR122022002075B1 (pt) Método de decodificação/codificação de imagem realizado por um aparelho de decodificação/codificação, aparelho de decodificação/codificação para decodificação/codificação de imagem, método de transmissão de dados para imagem e mídia de armazenamento legível por computador não transitória
JP2023093765A (ja) 大域的運動を伴うフレームにおける選択的運動ベクトル予測候補
US20220014751A1 (en) Method and device for processing video data
RU2793834C2 (ru) Способ и устройство для обработки видеосигнала посредством использования внешнего прогнозирования
AU2022252845B2 (en) Method and device for processing video signal by using inter prediction
JP2024073645A (ja) 画面間予測を使用してビデオ信号を処理するための方法及び装置
BR112021010422B1 (pt) Método de decodificação de imagem realizado por um aparelho de decodificação, método de codificação de imagem realizado por um aparelho de codificação de imagem e meio de armazenamento legível por computador não transitório

Legal Events

Date Code Title Description
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 02/01/2020, OBSERVADAS AS CONDICOES LEGAIS