BR112020007550A2 - método para decodificar informações de movimento, aparelho para decodificar informações de movimento, e método para codificar informações de movimento - Google Patents

método para decodificar informações de movimento, aparelho para decodificar informações de movimento, e método para codificar informações de movimento Download PDF

Info

Publication number
BR112020007550A2
BR112020007550A2 BR112020007550-7A BR112020007550A BR112020007550A2 BR 112020007550 A2 BR112020007550 A2 BR 112020007550A2 BR 112020007550 A BR112020007550 A BR 112020007550A BR 112020007550 A2 BR112020007550 A2 BR 112020007550A2
Authority
BR
Brazil
Prior art keywords
information
unit
encoding
coding unit
motion
Prior art date
Application number
BR112020007550-7A
Other languages
English (en)
Other versions
BR112020007550A8 (pt
Inventor
Jin-Young Lee
Woong-Il Choi
Original Assignee
Samsung Electronics Co., Ltd.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Samsung Electronics Co., Ltd. filed Critical Samsung Electronics Co., Ltd.
Publication of BR112020007550A2 publication Critical patent/BR112020007550A2/pt
Publication of BR112020007550A8 publication Critical patent/BR112020007550A8/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/109Selection of coding mode or of prediction mode among a plurality of temporal 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/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/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/184Methods 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 bits, e.g. of the compressed video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • 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
    • 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/513Processing of motion vectors
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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

Abstract

Um método para decodificar informações de movimento inclui: identificar um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade de partes de informações de movimento usadas para decodificar um bloco atual que é previsto; obter as informações do movimento de omissão usando um método predeterminado; e decodificar o bloco atual com base na pluralidade de partes de informações de movimento, incluindo as informações de movimento de omissão obtidas

Description

MÉTODO PARA DECODIFICAR INFORMAÇÕES DE MOVIMENTO, APARELHO PARA DECODIFICAR INFORMAÇÕES DE MOVIMENTO, E MÉTODO PARA CODIFICAR INFORMAÇÕES DE MOVIMENTO CAMPO TÉCNICO
[0001] A presente divulgação refere-se ao campo de codificação e decodificação de vídeo. Mais particularmente, a presente divulgação refere-se a um método e aparelho para codificar informações de movimento de um vídeo e um método e aparelho para decodificar informações de movimento de um vídeo.
FUNDAMENTOS DA TÉCNICA
[0002] Em um método de codificação e decodificação de um vídeo, a fim de codificar uma imagem, uma imagem pode ser dividida em macroblocos e cada um dos macroblocos pode ser codificado por predição usando predição inter ou predição intra.
[0003] A inter predição refere-se a um método de comprimir uma imagem removendo a redundância temporal entre as imagens, e um exemplo representativo da mesma é a codificação de estimativa de movimento. Na codificação de estimativa de movimento, os blocos de uma imagem atual são preditos usando pelo menos uma imagem de referência. Um bloco de referência que é mais semelhante a um bloco atual pode ser encontrado dentro de um intervalo de pesquisa predeterminado usando uma função de avaliação predeterminada.
[0004] Um bloco atual é predito com base em um bloco de referência e um bloco residual, que é gerado subtraindo do bloco atual um bloco de predição gerado como resultado da predição, é codificado. Nesse caso, para realizar uma predição com mais precisão, a interpolação é realizada em um intervalo de pesquisa da imagem de referência, pixels de unidade sub-pel menores que pixels de unidade inteiro-pel podem ser gerados, e a predição inter pode ser realizada nos pixels de unidade sub-pel gerados.
[0005] Em um codec como codificação de vídeo avançada H.264 (AVC) e codificação de vídeo de alta eficiência (HEVC), para predizer um vetor de movimento de um bloco atual, um vetor de movimento de blocos codificados anteriormente adjacentes ao(s) bloco(s) atual (is) em uma imagem codificada anteriormente é usada como um vetor de movimento de predição do bloco atual.
DESCRIÇÃO DE MODALIDADES SOLUÇÃO PARA O PROBLEMA
[0006] Um método para decodificar informações de movimento de acordo com uma modalidade inclui: identificar um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade de informações de partes de movimento usadas para decodificar um bloco atual que é predito; obter as informações do movimento de omissão usando um método predeterminado; e decodificar o bloco atual com base na pluralidade de informações de partes de movimento, incluindo as informações de movimento de omissão obtidas.
EFEITOS VANTAJOSOS DA DIVULGAÇÃO
[0007] Um aparelho e método para codificar informações de movimento de acordo com uma modalidade e um aparelho e método para decodificar informações de movimento podem reduzir o número de bits, omitindo algumas das várias partes de informação de movimento necessárias para decodificar um bloco predito.
BREVE DESCRIÇÃO DOS DESENHOS
[0008] Para entender melhor os desenhos anexos, é fornecida uma breve explicação de cada desenho.
[0009] A FIG. 1 é um diagrama de blocos de um aparelho de decodificação de imagem capaz de decodificar uma imagem com base em pelo menos uma das informações de forma de bloco e informações de forma de divisão, de acordo com uma modalidade.
[00010] A FIG. 2 é um diagrama de blocos de um aparelho de codificação de imagem capaz de codificar uma imagem com base em pelo menos uma das informações de forma de bloco e informações de forma de divisão, de acordo com uma modalidade.
[00011] A FIG. 3 ilustra um processo de determinar pelo menos uma unidade de codificação dividindo uma unidade de codificação atual, de acordo com uma modalidade.
[00012] A FIG. 4 ilustra um processo de determinar pelo menos uma unidade de codificação dividindo uma unidade de codificação não quadrada, de acordo com uma modalidade.
[00013] A FIG. 5 ilustra um processo de dividir uma unidade de codificação com base em pelo menos uma informação de forma de bloco e informações de forma de divisão, de acordo com uma modalidade.
[00014] A FIG. 6 ilustra um método de determinar uma unidade de codificação predeterminada entre um número ímpar de unidades de codificação, de acordo com uma modalidade.
[00015] A FIG. 7 ilustra uma ordem de processamento de uma pluralidade de unidades de codificação quando a pluralidade de unidades de codificação é determinada dividindo uma unidade de codificação atual, de acordo com uma modalidade.
[00016] A FIG. 8 ilustra um processo de determinar que uma unidade de codificação atual deve ser dividida em um número ímpar de unidades de codificação, quando as unidades de codificação não são processáveis em uma ordem predeterminada, de acordo com uma modalidade.
[00017] A FIG. 9 ilustra um processo de determinar pelo menos uma unidade de codificação dividindo uma primeira unidade de codificação, de acordo com uma modalidade.
[00018] AFIG. 10 ilustra que uma forma na qual uma segunda unidade de codificação é divisível é restrita quando uma segunda unidade de codificação não quadrada, determinada pela divisão de uma primeira unidade de codificação, satisfaz uma condição predeterminada, de acordo com uma modalidade.
[00019] A FIG. 11 ilustra um processo para dividir uma unidade de codificação quadrada quando as informações de forma de divisão indicam que a unidade de codificação quadrada não deve ser dividida em quatro unidades de codificação quadradas, de acordo com uma modalidade.
[00020] A FIG. 12 ilustra que uma ordem de processamento entre uma pluralidade de unidades de codificação pode ser alterada dependendo de um processo de divisão de uma unidade de codificação, de acordo com uma modalidade.
[00021] A FIG. 13 ilustra um processo de determinação de uma profundidade de uma unidade de codificação como uma forma e um tamanho da unidade de codificação alterada, quando a unidade de codificação é dividida recursivamente de tal modo que uma pluralidade de unidades de codificação seja determinada, de acordo com uma modalidade.
[00022] A FIG. 14 ilustra profundidades que são determináveis com base em formas e tamanhos de unidades de codificação e índices de parte (PIDs) que são para distinguir as unidades de codificação, de acordo com uma modalidade.
[00023] A FIG. 15 ilustra que uma pluralidade de unidades de codificação é determinada com base em uma pluralidade de unidades de dados predeterminadas incluídas em uma imagem, de acordo com uma modalidade.
[00024] A FIG. 16 ilustra um bloco de processamento que serve como uma unidade para determinar uma ordem de determinação das unidades de codificação de referência incluídas em uma imagem, de acordo com uma modalidade.
[00025] A FIG. 17 ilustra unidades de codificação determináveis por imagem quando uma combinação de formas nas quais uma unidade de codificação é divisível é diferente por imagem, de acordo com uma modalidade.
[00026] A FIG. 18 ilustra várias formas de uma unidade de codificação determinável com base em informações de forma de divisão representáveis como um código binário, de acordo com uma modalidade.
[00027] A FIG. 19 ilustra outras formas de uma unidade de codificação determinável com base em informações de forma dividida representáveis como um código binário, de acordo com uma modalidade.
[00028] A FIG. 20 é um diagrama de blocos de um sistema de codificação e decodificação de imagem para realizar a filtragem em loop.
[00029] A FIG. 21 é um diagrama que ilustra um exemplo de unidades de filtragem incluídas em uma maior unidade de codificação e informações de desempenho de filtragem de uma unidade de filtragem, de acordo com uma modalidade.
[00030] A FIG. 22 ilustra um processo de realização de fusão ou divisão entre unidades de codificação determinadas de acordo com um método de codificação predeterminado, de acordo com uma modalidade.
[00031] A FIG. 23 ilustra um índice de acordo com uma ordem de varredura Z de uma unidade de codificação, de acordo com uma modalidade.
[00032] A FIG. 24 é um diagrama que ilustra uma amostra de referência para predição intra de uma unidade de codificação, de acordo com uma modalidade.
[00033] A FIG. 25 é um diagrama de blocos que ilustra uma configuração de um aparelho de decodificação de informações de movimento, de acordo com uma modalidade.
[00034] A FIG. 26 é um fluxograma para descrever um método de decodificação de informações de movimento, de acordo com uma modalidade.
[00035] A FIG. 27 é um diagrama de blocos que ilustra uma configuração de um aparelho de codificação de informação de movimento, de acordo com uma modalidade.
[00036] A FIG. 28 é um fluxograma para descrever um método de codificação de informação de movimento, de acordo com uma modalidade.
[00037] As FIGS. 29 e 30 são diagramas para descrever informações de partes de movimento usadas para decodificar um bloco predito.
[00038] As FIGS. 31 e 32 são diagramas que ilustram informações de movimento de omissão correspondentes a um modo de omissão de informações de movimento.
[00039] A FIG. 33 é um diagrama que ilustra blocos candidatos utilizados para obter informações de omissão, de acordo com uma modalidade.
[00040] A FIG. 34 ilustra a sintaxe para obter informações de omissão de acordo com um modo de omissão de informações de movimento para um bloco predito bidirecionalmente.
[00041] A FIG. 35 ilustra a sintaxe para obter informações indicando uma resolução de vetor de movimento (MVR) de um bloco atual.
[00042] A FIG. 36 é um diagrama que ilustra posições de pixels que podem ser indicadas por vetores de movimento de acordo com um MVR de unidade de 1/4 de pixel, um MVR de unidade de 1/2 pixel, um MVR de unidade de 1 pixel e um MVR de unidade de 2 pixels quando um MVR mínimo selecionável para um bloco atual é o MVR de unidade de 1/4 de pixel.
[00043] As FIGS. 37 e 38 são diagramas para descrever um método de ajustar um vetor de movimento de predição ou uma diferença de vetor de movimento.
MELHOR MODO
[00044] Um método para decodificar informações de movimento de acordo com uma modalidade inclui: identificar um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade de informações de partes de movimento usadas para decodificar um bloco atual que é predito; obter as informações do movimento de omissão usando um método predeterminado; e decodificar o bloco atual com base na pluralidade de informações de partes de movimento, incluindo as informações de movimento de omissão obtidas.
[00045] A informação de movimento de omissão pode ser obtida com base em, ao mesmo tempo, determinar se existe informação de movimento de uma pluralidade de blocos candidatos relacionada espacial ou temporalmente ao bloco atual, de acordo com uma ordem de prioridade, informações de movimento de um bloco candidato cuja informação de movimento é primeiro determinada a existir.
[00046] A informação de movimento de omissão pode ser obtida pela combinação de informações de partes de movimento de uma pluralidade de blocos candidatos que possuem informações de movimento entre uma pluralidade de blocos candidatos espacial ou temporalmente relacionados ao bloco atual.
[00047] A informação de movimento de omissão pode ser obtida com base em informações de movimento base predefinidas.
[00048] A informação de movimento de omissão pode ser obtida com base na informação de movimento derivada através da derivação do vetor de movimento lateral do decodificador (DMVD).
[00049] Quando há uma pluralidade de informações de movimento de omissão, a obtenção da informação de movimento de omissão pode incluir a obtenção de cada uma da pluralidade de informações de movimento de omissão usando métodos diferentes.
[00050] O tipo de informação de movimento de omissão pode ser identificado com base em pelo menos uma de uma resolução de vetor de movimento do bloco atual, uma direção de predição do bloco atual, informações sobre o bloco atual, informações sobre um bloco vizinho decodificado anteriormente e informações indicando um modo de omissão de informações de movimento.
[00051] O método pode ainda incluir obter informações indicando se um processo de omissão de informações de movimento é aplicado, em que, quando é determinado que o processo de omissão de informações de movimento é aplicado, o tipo de informação de movimento de omissão é identificado.
[00052] As informações indicando se o processo de omissão de informações de movimento é aplicado podem incluir pelo menos uma resolução de vetor de movimento do bloco atual, uma direção de predição do bloco atual, informações sobre o bloco atual, informações sobre um bloco vizinho decodificado anteriormente e um sinalizador indicando se o processo de omissão de informações de movimento é aplicado.
[00053] Quando o bloco atual é predito bidirecionalmente, o método pode incluir ainda obter informações indicando um modo de omissão de informações de movimento, em que o modo de omissão das informações de movimento inclui pelo menos um de um primeiro modo no qual uma diferença de vetor de movimento correspondente a uma primeira lista de imagens de referência é identificada como a informação de movimento de omissão e um segundo modo no qual uma diferença de vetor de movimento correspondente a uma segunda lista de imagens de referência é identificada como a informação de movimento de omissão.
[00054] A pluralidade de informações de partes de informações de movimento pode incluir informações sobre uma resolução de vetor de movimento do bloco atual e informações indicando um vetor de movimento de predição, em que o método inclui ainda o ajuste do vetor de movimento de predição de acordo com a resolução do vetor de movimento do bloco atual.
[00055] O método pode ainda incluir obter, a partir do fluxo contínuo de dados, informações de movimento que não sejam informações de movimento de omissão entre a pluralidade de informações de movimento.
[00056] Um método para decodificar informações de movimento de acordo com uma modalidade inclui: obter informações indicando um tipo de predição bidirecional de um bloco atual que é predito bidirecionalmente; e decodificar o bloco atual usando informações de movimento diferentes de pelo menos uma de uma primeira diferença de vetor de movimento correspondente a uma primeira lista de imagens de referência e uma segunda diferença de vetor de movimento correspondente a uma segunda lista de imagens de referência entre uma pluralidade de informações de movimento relacionadas ao bloco atual, com base nas informações que indicam o tipo de predição bidirecional.
[00057] Um aparelho para decodificar informações de movimento de acordo com uma modalidade inclui: um identificador configurado para identificar um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade de partes de informações de movimento usadas para decodificar um bloco atual que é inter predito; e um decodificador configurado para obter as informações do movimento de omissão usando um método predeterminado; e decodificar o bloco atual com base na pluralidade de partes de informações de movimento, incluindo as informações de movimento de omissão obtidas.
[00058] Um método para decodificar informações de movimento de acordo com uma modalidade inclui: um identificador configurado para identificar um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade partes de informações de movimento usadas para decodificar um bloco atual que é inter predito; e um decodificador configurado para obter as informações do movimento de omissão usando um método predeterminado e decodificar o bloco atual com base na pluralidade de partes de informações de movimento, incluindo as informações de movimento de omissão obtidas.
MODO DE DIVULGAÇÃO
[00059] Como a presente divulgação permite várias alterações e inúmeras modalidades, modalidades exemplificativas serão ilustradas nos desenhos e descritas em detalhes na descrição escrita. No entanto, isso não se destina a limitar a presente divulgação a modos particulares de prática, e deve ser apreciado que todas as alterações, equivalentes e substituições que não se afastam do espírito e do escopo técnico da presente divulgação estão incluídos na presente divulgação.
[00060] Na descrição da presente divulgação, certas explicações detalhadas da técnica relacionada são omitidas quando se considera que elas podem ocultar desnecessariamente a essência da presente divulgação. Além disso, os números (por exemplo, primeiro e segundo) usados na descrição das modalidades da divulgação têm como objetivo meramente distinguir um componente do outro.
[00061] Quando um componente é referido como "conectado" ou "acessado" a ou por qualquer outro componente, deve-se entender que o componente pode ser diretamente conectado ou acessado a ou pelo outro componente, mas outro novo componente também pode ser interposto entre eles, salvo indicação em contrário.
[00062] Em relação a um elemento com um sufixo, como 'unidade"' ou 'módulo', dois ou mais elementos podem ser combinados em um elemento ou um elemento pode ser dividido em dois ou mais elementos, de acordo com as funções. Além disso, cada um dos respectivos componentes a serem descritos abaixo pode executar adicionalmente algumas ou todas as funções entre as funções que outros componentes se encarregam, além de uma função principal da qual cada componente se encarrega e algumas funções entre as funções principais que os respectivos componentes se encarregam podem ser realizadas exclusivamente por outros componentes.
[00063] Além disso, o termo 'imagem' ou quadro' aqui utilizado pode se referir a uma imagem estática de um vídeo ou uma imagem em movimento, isto é, um vídeo em si.
[00064] Além disso, o termo 'amostra' aqui utilizado refere-se a dados que são atribuídos a uma localização de amostragem de uma imagem e devem ser processados. Por exemplo, pixels em uma imagem de um domínio espacial ou coeficientes de transformação em um domínio de transformação podem ser amostras. Uma unidade incluindo uma ou mais amostras pode ser definida como um bloco.
[00065] Além disso, o termo 'bloco atual' aqui utilizado pode se referir a um bloco de uma unidade de codificação maior, uma unidade de codificação, uma unidade de predição ou uma unidade de transformação de uma imagem atual a ser codificada ou decodificada.
[00066] Além disso, o termo 'resolução de vetor de movimento (MVR) ' usado aqui pode se referir à precisão de uma posição de um pixel que pode ser indicada por um vetor de movimento determinado por meio de predição inter, entre os pixels incluídos em uma imagem de referência (ou uma imagem de referência interpolada). Quando um MVR possui uma unidade de pixel N (N é um número racional), significa que um vetor de movimento pode ter a precisão de uma unidade de pixel N. Por exemplo, um MVR de unidade de 1/4 de pixel pode significar que um vetor de movimento pode indicar uma posição de pixel de uma unidade de 1/4 de pixel (isto é, uma unidade de subpixel) em uma imagem de referência interpolada, e um MVR de 1 unidade de pixel pode significa que um vetor de movimento pode indicar uma posição de pixel correspondente a uma unidade de 1 pixel (ou seja, uma unidade de pixel inteiro) em uma imagem de referência interpolada.
[00067] Além disso, o termo 'MVR candidato' usado aqui refere-se a um ou mais MVRs que podem ser selecionados como MVR de um bloco, e o termo 'bloco candidato' refere-se a um ou mais blocos mapeados para um MVR candidato e pode ser usado como um bloco para que um vetor de movimento de predição de um bloco seja inter predito.
[00068] Além disso, o termo 'unidade de pixel' usado aqui pode ser usado de forma intercambiável com os termos 'precisão de pixel" e 'exatidão de pixel'.
[00069] Um método e aparelho de codificação de imagem e um método e aparelho de decodificação de imagem baseados em unidades de transformação e unidades de codificação tendo uma estrutura em árvore de acordo com uma modalidade serão descritos com referência às FIGS. 1 a 24. Um aparelho de codificação de imagem 200 e um aparelho de decodificação de imagem 100 a ser descrito com referência às FIGS. 1 a 24 podem incluir, respectivamente, um aparelho de codificação de informação de movimento 2700 e um aparelho de decodificação de informação de movimento 2500 a ser descrito com referência às FIGS. 25 a 38.
[00070] A FIG. 1 é um diagrama de blocos do aparelho de decodificação de imagem 100 capaz de decodificar uma imagem com base em pelo menos uma das informações de forma de bloco e informações de forma de divisão, de acordo com uma modalidade.
[00071] Com referência à FIG. l1, o aparelho de decodificação de imagem 100 pode incluir um obtenedor de fluxo contínuo de dados 110 para obter informações predeterminadas, como informações de forma de divisão e informações de forma de bloco de um fluxo contínuo de dados e um decodificador 120 para decodificar uma imagem usando as informações obtidas de acordo com uma modalidade. Quando o obtenedor de fluxo contínuo de dados 110 do aparelho de decodificação de imagem 100 obtém pelo menos uma das informações de forma de bloco e as informações de forma de divisão de acordo com uma modalidade, o decodificador 120 do aparelho de decodificação de imagem 100 pode determinar pelo menos uma unidade de codificação que divide uma imagem com base em pelo menos uma das informações de forma de bloco e as informações de forma de divisão.
[00072] De acordo com uma modalidade, o decodificador 120 do aparelho de decodificação de imagem 100 pode determinar uma forma de uma unidade de codificação com base nas informações de forma de bloco. Por exemplo, as informações da forma do bloco podem incluir informações indicando se a unidade de codificação tem uma forma quadrada ou não quadrada. O decodificador 120 pode determinar a forma da unidade de codificação usando as informações de forma do bloco.
[00073] De acordo com uma modalidade, o decodificador 120 pode determinar em qual forma a unidade de codificação deve ser dividida, com base nas informações de forma de divisão. Por exemplo, as informações de forma de divisão podem indicar informações sobre uma forma de pelo menos uma unidade de codificação incluída na unidade de codificação.
[00074] De acordo com uma modalidade, o decodificador 120 pode determinar se a unidade de codificação é dividida ou não dividida de acordo com as informações de forma de divisão. A informação de forma de divisão pode incluir informações sobre pelo menos uma unidade de codificação incluída na unidade de codificação e, quando a informação de forma de divisão indica que apenas uma unidade de codificação está incluída na unidade de codificação ou a unidade de codificação não está dividida, o decodificador 120 pode determinar que a unidade de codificação incluindo as informações de forma de divisão não está dividida. Quando a informação de forma de divisão indica que a unidade de codificação é dividida em uma pluralidade de unidades de codificação, o decodificador 120 pode dividir a unidade de codificação na pluralidade de unidades de codificação incluídas na unidade de codificação com base nas informações de forma de divisão.
[00075] De acordo com uma modalidade, a informação de forma de divisão pode indicar o número de unidades de codificação nas quais a unidade de codificação deve ser dividida ou uma direção na qual a unidade de codificação deve ser dividida. Por exemplo, as informações de forma de divisão podem indicar que a unidade de codificação está dividida em pelo menos uma direção vertical e horizontal ou não está dividida.
[00076] A FIG. 3 ilustra um processo, realizado pelo aparelho de decodificação de imagem 100, de determinar pelo menos uma unidade de codificação dividindo uma unidade de codificação atual, de acordo com uma modalidade.
[00077] Uma forma de bloco pode incluir 4NxX4N, 4NX2N, 2Nx4N, 4NxN ou NxX4N. N pode ser um número inteiro positivo. As informações sobre a forma do bloco são informações que indicam pelo menos uma de uma forma, uma direção, uma razão entre uma largura e uma altura e um tamanho de uma unidade de codificação.
[00078] A forma da unidade de codificação pode incluir uma forma quadrada e uma forma não quadrada. Quando a largura e a altura da unidade de codificação são as mesmas (ou seja, quando a forma do bloco da unidade de codificação é 4NxX4N), oO aparelho de decodificação de imagem 100 pode determinar as informações de forma do bloco da unidade de codificação como uma forma quadrada. O aparelho de decodificação de imagem 100 pode determinar a forma da unidade de codificação como uma forma não quadrada.
[00079] Quando a largura e a altura da unidade de codificação são diferentes uma da outra (isto é, quando o formato do bloco da unidade de codificação é 4NxXx2N, 2NxX4N, 4NXN ou Nx4N), o aparelho de decodificação de imagem 100 pode determinar a informação da forma do bloco da unidade de codificação como uma forma não quadrada. Quando a forma da unidade de codificação é uma forma não quadrada, o aparelho de decodificação de imagem 100 pode determinar a razão da largura e a altura nas informações de forma de bloco da unidade de codificação como pelo menos um de 1:2, 2:1, 1:4, 4:1, 1:8 e 8:1. Além disso, o aparelho de decodificação de imagem 100 pode determinar se a unidade de codificação está na direção horizontal ou vertical, com base em um comprimento da largura e um comprimento da altura da unidade de codificação. Além disso, o aparelho de decodificação de imagem 100 pode determinar o tamanho da unidade de codificação, com base em pelo menos um do comprimento da largura, o comprimento da altura e uma área da unidade de codificação.
[00080] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma forma da unidade de codificação usando as informações de forma de bloco e pode determinar em qual forma a unidade de codificação é dividida usando informações de modo de forma de divisão. Ou seja, um método de divisão da unidade de codificação indicado pela informação do modo de forma de divisão pode ser determinado de acordo com a forma do bloco indicada pela informação da forma do bloco usada pelo aparelho de decodificação de imagem 100.
[00081] O aparelho de decodificação de imagem 100 pode obter as informações do modo de forma de divisão a partir de um fluxo contínuo de dados. No entanto, a presente divulgação não está limitada a isso e o aparelho de decodificação de imagem 100 e o aparelho de codificação de imagem 200 podem determinar as informações do modo de forma de divisão que são pré-prometidas com base nas informações de forma de bloco. O aparelho de decodificação de imagem 100 pode determinar as informações do modo de forma de divisão que são pré-prometidas para uma unidade de codificação maior ou uma unidade de codificação menor. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar um tamanho da maior unidade de codificação para 256x256. O aparelho de decodificação de imagem 100 pode determinar que as informações pré-prometidas do modo de forma de divisão indicam divisão quádrupla. A divisão quádrupla é um modo de forma de divisão em que a largura e a altura da unidade de codificação são divididas pela metade. O aparelho de decodificação de imagem 100 pode obter a unidade de codificação com um tamanho de 128x128 da maior unidade de codificação com um tamanho de 256x256 com base nas informações do modo de forma de divisão. Além disso, o aparelho de decodificação de imagem 100 pode determinar um tamanho da menor unidade de codificação para ser 4x4. O aparelho de decodificação de imagem 100 pode obter as informações do modo de forma de divisão indicando "não realizar divisão" para a menor unidade de codificação.
[00082] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar as informações de forma de bloco indicando que a unidade de codificação atual tem uma forma quadrada. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar se não deve ser dividida uma unidade de codificação quadrada, se é dividida verticalmente a unidade de codificação quadrada, se é dividida horizontalmente a unidade de codificação quadrada ou se deve ser dividida a unidade de codificação quadrada em quatro unidades de codificação, com base nas informações do modo de forma de dividida. Com referência à FIG. 3, quando as informações de forma de bloco de uma unidade de codificação atual 300 indicam uma forma quadrada, o decodificador 120 pode determinar que uma unidade de codificação 310a tendo o mesmo tamanho que a unidade de codificação atual 300 não é dividida, com base nas informações do modo de forma de divisão indicando não realizar divisão ou pode determinar as unidades de codificação 310b, 310c e 310d divididas com base nas informações do modo de forma de divisão, indicando um método de divisão predeterminado.
[00083] Com referência à FIG. 3, de acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar duas unidades de codificação 310b obtidas dividindo verticalmente a unidade de codificação atual 300, com base nas informações do modo de forma de divisão indicando a realização vertical da divisão. O aparelho de decodificação de imagem 100 pode determinar duas unidades de codificação 310c obtidas pela divisão horizontal da unidade de codificação atual 300, com base nas informações do modo de forma de divisão indicando a realização horizontal da divisão. O aparelho de decodificação de imagem 100 pode determinar quatro unidades de codificação 310d obtidas dividindo vertical e horizontalmente a unidade de codificação atual 300, com base nas informações do modo de forma de divisão indicando para executar a divisão vertical e horizontalmente. No entanto, os métodos de divisão da unidade de codificação quadrada não se limitam aos métodos descritos acima e as informações do modo de forma de divisão podem incluir vários métodos. Métodos de divisão predeterminados de divisão da unidade de codificação quadrada serão descritos em detalhes abaixo através de várias modalidades.
[00084] A FIG. 4 ilustra um processo, realizado pelo aparelho de decodificação de imagem 100, de determinar pelo menos uma unidade de codificação dividindo uma unidade de codificação não quadrada, de acordo com uma modalidade.
[00085] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar informações de forma de bloco indicando que uma unidade de codificação atual tem uma forma não quadrada. O aparelho de decodificação de imagem 100 pode determinar, de acordo com as informações do modo de forma de divisão, se não deve dividir a unidade de codificação atual não quadrada ou se a unidade de codificação atual não quadrada é dividida usando uma informação de método predeterminada. Com referência à FIG. 4, quando a informação de forma de bloco de uma unidade de codificação atual 400 ou 450 indica uma forma não quadrada, o aparelho de decodificação de imagem 100 pode determinar uma unidade de codificação 410 ou 460 com o mesmo tamanho da unidade de codificação atual 400 ou 450 com base nas informações do modo de forma de divisão indicando não realizar a divisão, ou determinar as unidades de codificação 420a e 420b, 430a a 430c, 470a e 470b ou 480a a 480c divididas com base nas informações do modo de forma de divisão indicando um método de divisão predeterminado. Métodos de divisão predeterminados de divisão de uma unidade de codificação não quadrada serão descritos em detalhes abaixo através de várias modalidades.
[00086] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar um método de divisão de uma unidade de codificação usando as informações do modo de forma de divisão e, neste caso, à informações do modo de forma de divisão pode indicar o número de uma ou mais unidades de codificação geradas pela divisão a unidade de codificação. Com referência à FIG. 4, quando as informações do modo de forma de divisão indicam dividir a unidade de codificação atual 400 ou 450 em duas unidades de codificação, o aparelho de decodificação de imagem 100 pode determinar duas unidades de codificação 420a e 420b, ou 470a e 470b incluídas na unidade de codificação atual 400 ou 450 dividindo a unidade de codificação atual 400 ou 450 com base nas informações do modo de forma de divisão.
[00087] De acordo com uma modalidade, quando o aparelho de decodificação de imagem 100 divide a unidade de codificação atual não quadrada 400 ou 450 com base nas informações do modo de forma de divisão, a localização de um lado longo da unidade de codificação atual não quadrada 400 ou 450 pode ser considerada. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar uma pluralidade de unidades de codificação dividindo o lado longo da unidade de codificação atual 400 ou 450, em consideração à forma da unidade de codificação atual 400 ou 450.
[00088] De acordo com uma modalidade, quando as informações do modo de forma de divisão indica para dividir (divisão tri) uma unidade de codificação em um número ímpar de blocos, o aparelho de decodificação de imagem 100 pode determinar um número ímpar de unidades de codificação incluídas na unidade de codificação atual 400 ou 450. Por exemplo, quando as informações do modo de forma de divisão indicam para dividir a unidade de codificação atual 400 ou 450 em três unidades de codificação, o aparelho de decodificação de imagem 100 pode dividir a unidade de codificação atual 400 ou 450 em três unidades de codificação 430a, 430b e 430c, ou 480a,
480b e 480c.
[00089] De acordo com uma modalidade, uma razão entre uma largura e uma altura da unidade de codificação atual 400 ou 450 pode ser 4:1 ou 1:4. Quando a razão entre a largura e a altura é 4:1, um comprimento da largura é maior que o comprimento da altura e, portanto, as informações de forma do bloco podem ser horizontais. Quando a razão entre a largura e a altura é 1:4, um comprimento da largura é menor que o comprimento da altura e, portanto, as informações de forma do bloco podem ser verticais. O aparelho de decodificação de imagem 100 pode determinar a divisão da unidade de codificação atual em um número ímpar de blocos com base nas informações do modo de forma de divisão. Além disso, o aparelho de decodificação de imagem 100 pode determinar uma direção de divisão da unidade de codificação atual 400 ou 450 com base nas informações de forma de bloco da unidade de codificação atual 400 ou 450. Por exemplo, quando a unidade de codificação atual 400 está na direção vertical, o aparelho de decodificação de imagem 100 pode dividir horizontalmente a unidade de codificação atual 400 e pode determinar as unidades de codificação 430a, 430b e 430c. Além disso, quando a unidade de codificação atual 450 está na direção horizontal, o aparelho de decodificação de imagem 100 pode dividir verticalmente a unidade de codificação atual 450 e pode determinar as unidades de codificação 480a, 480b e 480c.
[00090] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar um número ímpar de unidades de codificação incluídas na unidade de codificação atual 400 ou 450, e os tamanhos de todas as unidades de codificação determinadas podem não ser os mesmos. Por exemplo, uma unidade de codificação predeterminada 430b ou 480b entre o número ímpar determinado de unidades de codificação 430a, 430b e 430c, ou 480a, 480b e 480c pode ter um tamanho diferente dos tamanhos das outras unidades de codificação 430a e 430c, ou 480a e 480c. Ou seja, as unidades de codificação que podem ser determinadas dividindo a unidade de codificação atual 400 ou 450 podem ter vários tamanhos e, em alguns casos, todos os números ímpares de unidades de codificação 430a, 430b e 430c ou 480a, 480b e 480c podem ter tamanhos diferentes.
[00091] De acordo com uma modalidade, quando as informações do modo de forma de divisão indicam para dividir uma unidade de codificação em um número ímpar de blocos, o aparelho de decodificação de imagem 100 pode determinar um número ímpar de unidades de codificação incluídas na unidade de codificação atual 400 ou 450, e pode colocar uma restrição predeterminada em pelo menos uma unidade de codificação entre o número ímpar de unidades de codificação geradas pela divisão da unidade de codificação atual 400 ou 450. Com referência à FIG. 4, o aparelho de decodificação de imagem 100 pode permitir que um método de decodificação da unidade de codificação 430b ou 480b seja diferente do das outras unidades de codificação 430a e 430c ou 480a e 480c, em que a unidade de codificação 430b ou 480b está em uma localização central entre as três unidades de codificação 430a, 430b e 430c, ou 480a, 480b e 480c geradas pela divisão da unidade de codificação atual 400 ou
450. Por exemplo, o aparelho de decodificação de imagem 100 pode restringir a unidade de codificação 430b ou 480b na localização central para não ser mais dividida ou para ser dividida apenas um número predeterminado de vezes, ao contrário das outras unidades de codificação 430a e 430c, ou 480a e 480c.
[00092] A FIG. 5 ilustra um processo, realizado pelo aparelho de decodificação de imagem 100, de dividir uma unidade de codificação com base em pelo menos uma informação de forma de bloco e informações de modo de forma de divisão, de acordo com uma modalidade.
[00093] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar dividir ou não dividir uma primeira unidade de codificação quadrada 500 em unidades de codificação com base em pelo menos uma das informações de forma de bloco e informações de modo de forma de divisão. De acordo com uma modalidade, quando as informações do modo de forma de divisão indicam para dividir a primeira unidade de codificação 500 em uma direção horizontal, o aparelho de decodificação de imagem 100 pode determinar uma segunda unidade de codificação 510 dividindo a primeira unidade de codificação 500 em uma direção horizontal. Uma primeira unidade de codificação, uma segunda unidade de codificação e uma terceira unidade de codificação usada de acordo com uma modalidade são termos usados para entender uma relação antes e depois da divisão de uma unidade de codificação. Por exemplo, a segunda unidade de codificação pode ser determinada dividindo a primeira unidade de codificação e a terceira unidade de codificação pode ser determinada dividindo a segunda unidade de codificação. Será entendido que uma relação entre a primeira unidade de codificação, a segunda unidade de codificação e a terceira unidade de codificação se aplica às seguintes descrições.
[00094] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar dividir ou não dividir a determinada segunda unidade de codificação quadrada 510 em unidades de codificação, com base em pelo menos uma das informações de forma de bloco e informações de modo de forma de divisão. Com referência à FIG. 5, O aparelho de decodificação de imagem 100 pode ou não dividir a segunda unidade de codificação não quadrada 510, que é determinada pela divisão da primeira unidade de codificação 500, em uma ou mais terceiras unidades de codificação 520a ou 520b, 520c e 520d com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão. O aparelho de decodificação de imagem 100 pode obter pelo menos uma das informações de forma de bloco e informações de modo de forma de divisão e pode dividir uma pluralidade de segundas unidades de codificação de várias formas (por exemplo, 510) dividindo a primeira unidade de codificação 500, com base em pelo menos uma das informações de forma de bloco obtidas e informações de modo de forma de divisão, e a segunda unidade de codificação 510 pode ser dividida usando um método de divisão da primeira unidade de codificação 500 com base em pelo menos uma das informações de forma de bloco e as informações de modo de forma de divisão. De acordo com uma modalidade, quando a primeira unidade de codificação 500 é dividida nas segundas unidades de codificação 510 com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão da primeira unidade de codificação 500, a segunda unidade de codificação 510 também pode ser dividida nas terceiras unidades de codificação 520a, ou 520b, 520c e 520d com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão da segunda unidade de codificação 510. Ou seja, uma unidade de codificação pode ser dividida recursivamente com base em pelo menos uma das informações de forma de bloco e as informações de modo de forma de divisão de cada unidade de codificação. Desta forma, uma unidade de codificação quadrada pode ser determinada dividindo uma unidade de codificação não quadrada e uma unidade de codificação não quadrada pode ser determinada dividindo recursivamente a unidade de codificação quadrada.
[00095] Com referência à FIG. 5, uma unidade de codificação predeterminada (por exemplo, uma unidade de codificação em uma localização central ou uma unidade de codificação quadrada) entre um número ímpar de terceiras unidades de codificação 520b, 520c e 520d determinadas pela divisão da segunda unidade de codificação não quadrada 510 pode ser dividida recursivamente. De acordo com uma modalidade, a terceira unidade de codificação quadrada 520b entre o número ímpar de terceiras unidades de codificação 520b, 520c e 520d pode ser dividida em uma direção horizontal em uma pluralidade de quartas unidades de codificação 530, 530b, 530c e 530d. Uma quarta unidade de codificação não quadrada 530b ou 530d entre a pluralidade de quartas unidades de codificação 530a, 530b, 530c e 530d pode ser dividida novamente em uma pluralidade de unidades de codificação. Por exemplo, a quarta unidade de codificação não quadrada 530b ou 530d pode ser dividida novamente em um número ímpar de unidades de codificação. Um método que pode ser usado para dividir recursivamente uma unidade de codificação será descrito abaixo através de várias modalidades.
[00096] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir cada uma das terceiras unidades de codificação 520a, ou 520b, 520c e 520d em unidades de codificação, com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão. Além disso, o aparelho de decodificação de imagem 100 pode determinar não dividir a segunda unidade de codificação 510 com base em pelo menos uma das informações de forma de bloco e as informações de modo de forma de divisão. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir a segunda unidade de codificação não quadrada 510 no número ímpar de terceiras unidades de codificação 520b, 520c e 520d. O aparelho de decodificação de imagem 100 pode colocar uma restrição predeterminada em uma terceira unidade de codificação predeterminada entre o número ímpar de terceiras unidades de codificação 520b, 520c e 520d. Por exemplo, o aparelho de decodificação de imagem 100 pode restringir a terceira unidade de codificação 520c em uma localização central entre o número ímpar de terceiras unidades de codificação 520b, 520c e 520d para não ser mais dividida ou para ser dividida em um número configurável de vezes.
[00097] Com referência à FIG. 5, o aparelho de decodificação de imagem 100 pode restringir a terceira unidade de codificação 520c, que está na localização central entre o número ímpar de terceiras unidades de codificação 520b, 520c e 520d incluídas na segunda unidade de codificação não quadrada 510, para não ser mais dividida, para ser dividida usando um método de divisão predeterminado (por exemplo, dividida em apenas quatro unidades de codificação ou dividida usando um método de divisão da segunda unidade de codificação 510) ou para ser dividida apenas um número predeterminado de vezes (por exemplo, divisão apenas n vezes (onde n> 0)). No entanto, as restrições na terceira unidade de codificação 520c na localização central não se limitam aos exemplos descritos anteriormente e podem incluir várias restrições para decodificar a terceira unidade de codificação 520c na localização central diferentemente das outras terceiras unidades de codificação 520b e 520d.
[00098] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode obter pelo menos uma das informações de forma do bloco e das informações do modo de forma de divisão, que são usadas para dividir uma unidade de codificação atual, a partir de uma localização predeterminada na unidade de codificação atual.
[00099] A FIG. 6 ilustra um método, realizado pelo aparelho de decodificação de imagem 100, de determinar uma unidade de codificação predeterminada entre um número ímpar de unidades de codificação, de acordo com uma modalidade.
[000100] Com referência à FIG. 6, pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão de uma unidade de codificação atual 600 ou 650 podem ser obtidas de uma amostra de uma localização predeterminada (por exemplo, uma amostra 640 ou 690 de uma localização central) entre uma pluralidade de amostras incluídas na unidade de codificação atual 600 ou 650. No entanto, a localização predeterminada na unidade de codificação atual 600, a partir da qual pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão pode ser obtida, não está limitada à localização central na FIG. 6 e pode incluir várias localizações (por exemplo, localizações superior, inferior, esquerda, direita, superior esquerda, inferior esquerda, superior direita e inferior direita) incluídos na unidade de codificação atual 600. O aparelho de decodificação de imagem 100 pode obter pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão a partir da localização predeterminada e pode determinar dividir ou não dividir a unidade de codificação atual em unidades de codificação de formas variadas e tamanhos variados.
[000101] De acordo com uma modalidade, quando a unidade de codificação atual é dividida em um número predeterminado de unidades de codificação, o aparelho de decodificação de imagem 100 pode selecionar uma das unidades de codificação. Vários métodos que podem ser usados para selecionar uma entre uma pluralidade de unidades de codificação serão descritos abaixo através de várias modalidades.
[000102] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir a unidade de codificação atual em uma pluralidade de unidades de codificação e pode determinar uma unidade de codificação em uma localização predeterminada.
[000103] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar informações indicando localizações de um número ímpar de unidades de codificação para determinar uma unidade de codificação em uma localização central entre o número ímpar de unidades de codificação. Com referência à FIG. 6, o aparelho de decodificação de imagem 100 pode determinar um número ímpar de unidades de codificação 620a, 620b e 620c ou um número ímpar de unidades de codificação 660a, 660b e 660c dividindo a unidade de codificação atual 600 ou a unidade de codificação atual 650. O aparelho de decodificação de imagem 100 pode determinar a unidade de codificação 620b em uma localização central ou a unidade de codificação 660b em uma localização central usando informações sobre localizações do número ímpar de unidades de codificação 620a, 620b e 620c ou o número ímpar de unidades de codificação 660a , 660b e 660c. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação 620b da localização central, determinando as localizações das unidades de codificação 620a, 620b e 620c com base em informações indicando locais de amostras predeterminadas incluídas nas unidades de codificação 620a, 620b e 620c. Em detalhes, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação 620b na localização central, determinando os locais das unidades de codificação 620a, 620b e 620c com base em informações indicando locais das amostras superior esquerda 630a, 630b e 630c da codificação unidades 620a, 620b e 620c.
[000104] De acordo com uma modalidade, as informações indicando os locais das amostras superior esquerda 630a, 630b e 630c, incluídas nas unidades de codificação 620a, 620b e 620c, respectivamente, podem incluir informações sobre locais ou coordenadas das unidades de codificação 620a , 620b e 620c em uma imagem. De acordo com uma modalidade, as informações indicando os locais das amostras superior esquerda 630a, 630b e 630c, incluídas nas unidades de codificação 620a, 620b e 620c, respectivamente, podem incluir informações indicando larguras ou alturas das unidades de codificação 620a , 620b e 620c incluídos na unidade de codificação atual 600, e as larguras ou alturas podem corresponder a informações indicando diferenças entre as coordenadas das unidades de codificação 620a, 620b e 620c na imagem. Ou seja, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação 620b na localização central, usando diretamente as informações sobre os locais ou coordenadas das unidades de codificação 620a, 620b e 620c na imagem, ou usando as informações sobre as larguras ou alturas das unidades de codificação, que correspondem aos valores de diferença entre as coordenadas.
[000105] De acordo com uma modalidade, as informações indicando a localização da amostra superior esquerda 630a da unidade de codificação superior 620a podem incluir coordenadas (xa, ya), as informações indicando a localização da amostra superior esquerda 630b da unidade de codificação central 620b podem incluir coordenadas ( xb, yb) e informações indicando a localização da amostra superior esquerda 630c da unidade de codificação inferior 620c podem incluir coordenadas (xc, yc) . O aparelho de decodificação de imagem 100 pode determinar a unidade de codificação do meio 620b usando as coordenadas das amostras superiores esquerda 630a, 630b e 630c que estão incluídas nas unidades de codificação 620a, 620b e 620c, respectivamente. Por exemplo, quando as coordenadas das amostras superior esquerda 630a, 630b e 630c são classificadas em ordem crescente ou decrescente, a unidade de codificação 620b incluindo as coordenadas (xb, yb) da amostra 630b em uma localização central pode ser determinada como uma unidade de codificação em uma localização central entre as unidades de codificação 620a, 620b e 620c determinado pela divisão da unidade de codificação atual
600. No entanto, as coordenadas que indicam os locais das amostras superior esquerda 630a, 630b e 630c podem incluir coordenadas indicando locais absolutos na imagem ou podem usar coordenadas (dxb, dyb) indicando uma localização relativa da amostra superior esquerda 630b da unidade de codificação intermediária 620b e coordenadas (dxc, dyc) indicando uma localização relativa da amostra superior esquerda 630c da unidade de codificação inferior 620c, com referência à localização da amostra superior esquerda 630a da unidade de codificação superior 620a. Além disso, um método para determinar uma unidade de codificação em uma localização predeterminada usando coordenadas de uma amostra incluída na unidade de codificação como informação indicando que a localização da amostra não está limitada ao método descrito acima e pode incluir vários métodos aritméticos capazes de usar as coordenadas da amostra.
[000106] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir a unidade de codificação atual 600 na pluralidade de unidades de codificação 620a, 620b e 620c, e pode selecionar uma das unidades de codificação 620a, 620b e 620c com base em um critério predeterminado. Por exemplo, o aparelho de decodificação de imagem 100 pode selecionar a unidade de codificação 620b, que tem um tamanho diferente do das outras, entre as unidades de codificação 620a, 620b e 620c.
[000107] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar as larguras ou alturas das unidades de codificação 620a, 620b e 620c usando as coordenadas (xa, ya) indicando a localização da amostra superior esquerda 630a da unidade de codificação superior 620a, as coordenadas (xb, yb) indicando a localização da amostra superior esquerda 630b da unidade de codificação média 620b e as coordenadas (xc, yc) indicando a localização da amostra superior esquerda 630c da unidade de codificação inferior 620c. O aparelho de decodificação de imagem 100 pode determinar os tamanhos das unidades de codificação 620a, 620b e 620c usando as coordenadas (xa, ya), (xb, yb) e (xc, yc) indicando as localizações das unidades de codificação 620a, 620b e 620c. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a largura da unidade de codificação superior 620a como sendo uma largura da unidade de codificação atual
600. O aparelho de decodificação de imagem 100 pode determinar a altura da unidade de codificação superior 620a para ser yb-ya. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a largura da unidade de codificação do meio 620b como sendo uma largura da unidade de codificação atual 600. O aparelho de decodificação de imagem 100 pode determinar a altura da unidade de codificação intermediária 620b como sendo yc-yb. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a largura ou a altura da unidade de codificação inferior 620c usando a largura ou a altura da unidade de codificação atual 600 e as larguras ou alturas das unidades de codificação superior e intermediária 620a e 620b. O aparelho de decodificação de imagem 100 pode determinar uma unidade de codificação, que tem um tamanho diferente da das outras, com base nas larguras e alturas determinadas das unidades de codificação 620a a 620c. Com referência à FIG. 6, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação intermediária 620b, que tem um tamanho diferente do tamanho das unidades de codificação superior e inferior 620a e 620c, como a unidade de codificação da localização predeterminada. No entanto, o método descrito acima, realizado pelo aparelho de decodificação de imagem 100, de determinação de uma unidade de codificação com um tamanho diferente do tamanho das outras unidades de codificação corresponde apenas a um exemplo de determinação de uma unidade de codificação em uma localização predeterminada usando os tamanhos de unidades de codificação, que são determinados com base nas coordenadas das amostras e, portanto, vários métodos para determinar uma unidade de codificação em uma localização predeterminada, comparando os tamanhos de unidades de codificação, que são determinados com base nas coordenadas de amostras predeterminadas, podem ser usados.
[000108] O aparelho de decodificação de imagem 100 pode determinar uma largura ou altura de cada uma das unidades de codificação 660a, 660b e 660c usando coordenadas (xd, yd) que são informações indicando uma localização de uma amostra superior esquerda 670a da unidade de codificação esquerda 660a, coordenadas (xe, ye) que são informações indicando uma localização da amostra superior esquerda 670b da unidade de codificação intermediária 660b e coordenadas (xf, yf) que são informações indicando uma localização de uma amostra superior esquerda 670c da unidade de codificação direita 660c. O aparelho de decodificação de imagem 100 pode determinar tamanhos das unidades de codificação 660a, 660b e 660c usando as coordenadas (xd, yd), (xe, ye) e (xf, yf) indicando os locais das unidades de codificação 660a, 660b e 660c.
[000109] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a largura da unidade de codificação esquerda 660a para ser xe-xd. O aparelho de decodificação de imagem 100 pode determinar a altura da unidade de codificação esquerda 660a como a altura da unidade de codificação atual 650. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a largura da unidade de codificação intermediária 660b para ser xf-xe. O aparelho de decodificação de imagem 100 pode determinar a altura da unidade de codificação intermediária 660b como a altura da atual unidade de codificação 600. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a largura ou à altura da unidade de codificação direita 660c usando a largura ou a altura da unidade de codificação atual 650 e a largura e a altura da unidade de codificação esquerda 660a e a unidade de codificação intermediária 660b. O aparelho de decodificação de imagem 100 pode determinar uma unidade de codificação, que tem um tamanho diferente da das outras, com base nas larguras e alturas determinadas das unidades de codificação 660a, 660b, e 660c. Com referência à FIG. 6, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação intermediária 660b, que tem um tamanho diferente do tamanho da unidade de codificação esquerda 660a e da unidade de codificação direita 660c, como a unidade de codificação da localização predeterminada. No entanto, o método descrito acima, realizado pelo aparelho de decodificação de imagem 100, de determinação de uma unidade de codificação com um tamanho diferente do tamanho das outras unidades de codificação corresponde apenas a um exemplo de determinação de uma unidade de codificação em uma localização predeterminada usando os tamanhos de unidades de codificação, que são determinados com base nas coordenadas das amostras e, portanto, vários métodos para determinar uma unidade de codificação em uma localização predeterminada, comparando os tamanhos de unidades de codificação, que são determinados com base nas coordenadas de amostras predeterminadas, podem ser usados.
[000110] No entanto, as localizações das amostras consideradas para determinar as localizações das unidades de codificação não estão limitadas às localizações superior esquerdas descritas acima, e as informações sobre locais arbitrários das amostras incluídas nas unidades de codificação podem ser usadas.
[000111] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode selecionar uma unidade de codificação em uma localização predeterminada entre um número ímpar de unidades de codificação determinadas pela divisão da unidade de codificação atual, considerando a forma da unidade de codificação atual. Por exemplo, quando a unidade de codificação atual tem uma forma não quadrada, cuja largura é maior que uma altura, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação na localização predeterminada na direção horizontal. Ou seja, o aparelho de decodificação de imagem 100 pode determinar uma das unidades de codificação em diferentes locais na direção horizontal e pode colocar uma restrição na unidade de codificação. Quando a unidade de codificação atual tem uma forma não quadrada, cuja altura é maior que uma largura, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação na localização predeterminado na direção vertical. Ou seja, o aparelho de decodificação de imagem 100 pode determinar uma das unidades de codificação em locais diferentes em uma direção vertical e pode colocar uma restrição na unidade de codificação.
[000112] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar informações indicando localizações respectivas de um número par de unidades de codificação para determinar a unidade de codificação na localização predeterminada entre o número par de unidades de codificação. O aparelho de decodificação de imagem 100 pode determinar um número par de unidades de codificação dividindo (divisão binária) a unidade de codificação atual e pode determinar a unidade de codificação na localização predeterminada usando as informações sobre os locais do número par de unidades de codificação. Uma operação relacionada a ela pode corresponder à operação de determinar uma unidade de codificação em uma localização predeterminada (por exemplo, uma localização central) entre um número ímpar de unidades de codificação, que foi descrito em detalhes acima com referência à FIG. 6 e, portanto, descrições detalhadas dos mesmos não são fornecidas aqui.
[000113] De acordo com uma modalidade, quando uma unidade de codificação atual não quadrada é dividida em uma pluralidade de unidades de codificação, informações predeterminadas sobre uma unidade de codificação em uma localização predeterminada podem ser usadas em uma operação de divisão para determinar a unidade de codificação na localização predeterminada entre a pluralidade de unidades de codificação. Por exemplo, o aparelho de decodificação de imagem 100 pode usar pelo menos uma das informações de forma de bloco e informações de modo de forma de divisão, que são armazenadas em uma amostra incluída em uma unidade de codificação em uma localização central, em uma operação de divisão para determinar a unidade de codificação na localização central entre a pluralidade de unidades de codificação determinadas pela divisão da unidade de codificação atual.
[000114] Com referência à FIG. 6, o aparelho de decodificação de imagem 100 pode dividir a unidade de codificação atual 600 na pluralidade de unidades de codificação 620a, 620b e 620c com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão e pode determinar a unidade de codificação 620b em uma localização central entre a pluralidade das unidades de codificação 620a, 620b e 620c. Além disso, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação 620b na localização central, em consideração de uma localização a partir da qual pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão é obtida. Ou seja, pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão da unidade de codificação atual 600 pode ser obtida a partir da amostra 640 em uma localização central da unidade de codificação atual 600 e, quando a unidade de codificação atual 600 é dividida na pluralidade de unidades de codificação 620a, 620b e 620c com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão, a unidade de codificação 620b incluindo a amostra 640 pode ser determinada como a unidade de codificação na localização central. No entanto, as informações usadas para determinar a unidade de codificação na localização central não se limitam a pelo menos uma das informações de forma de bloco e a informações do modo de forma de divisão e vários tipos de informações podem ser usados para determinar a unidade de codificação na localização central.
[000115] De acordo com uma modalidade, as informações predeterminadas para identificar a unidade de codificação na localização predeterminada podem ser obtidas de uma amostra predeterminada incluída em uma unidade de codificação a ser determinada. Com referência à FIG. 6, o aparelho de decodificação de imagem 100 pode usar pelo menos uma das informações de forma de bloco e as informações do modo de forma de divisão, que são obtidas de uma amostra em uma localização predeterminada na unidade de codificação atual 600 (por exemplo, uma amostra na localização central da unidade de codificação atual 600) para determinar um unidade de codificação em uma localização predeterminada entre a pluralidade das unidades de codificação 620a, 620b e 620c determinada pela divisão da unidade de codificação atual 600 (por exemplo, uma unidade de codificação na localização central entre uma pluralidade de unidades de codificação divididas). Ou seja,
o aparelho de decodificação de imagem 100 pode determinar a amostra na localização predeterminada, considerando uma forma de bloco da unidade de codificação atual 600, pode determinar a unidade de codificação 620b incluindo uma amostra, a partir da qual as informações predeterminadas (por exemplo, pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão) podem ser obtidas entre a pluralidade de unidades de codificação 620a, 620b e 620c, determinada pela divisão da unidade de codificação atual 600 e podem colocar uma restrição predeterminada na unidade de codificação 620b. Com referência à FIG. 6, de acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a amostra 640 na localização central da unidade de codificação atual 600 como a amostra da qual a informação predeterminada pode ser obtida e pode colocar uma restrição predeterminada na unidade de codificação 620b incluindo a amostra 640, em uma operação de decodificação. No entanto, a localização da amostra a partir da qual a informação predeterminada pode ser obtida não está limitada à localização descrita acima e pode incluir locais arbitrários das amostras incluídas na unidade de codificação 620b a serem determinadas para uma restrição.
[000116] De acordo com uma modalidade, a localização da amostra a partir da qual a informação predeterminada pode ser obtida pode ser determinada com base na forma da unidade de codificação atual
600. De acordo com uma modalidade, as informações da forma do bloco pode indicar se a unidade de codificação atual tem uma forma quadrada ou não quadrada, e a localização da amostra a partir da qual as informações predeterminadas podem ser obtidas pode ser determinada com base na forma. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar uma amostra localizada em um limite para dividir ao menos uma de uma largura e altura da unidade de codificação atual pela metade, como a amostra da qual a informação predeterminada pode ser obtida, usando pelo menos informações sobre a largura da unidade de codificação atual e informações sobre a altura da unidade de codificação atual. Como outro exemplo, quando as informações da forma do bloco da unidade de codificação atual indica uma forma não quadrada, o aparelho de decodificação de imagem 100 pode determinar uma das amostras adjacentes a um limite para dividir pela metade um lado longo da unidade de codificação atual, como o amostra a partir da qual as informações predeterminadas podem ser obtidas.
[000117] De acordo com uma modalidade, quando a unidade de codificação atual é dividida em uma pluralidade de unidades de codificação, o aparelho de decodificação de imagem 100 pode usar pelo menos uma das informações de forma de bloco e as informações do modo de forma de divisão para determinar uma unidade de codificação em uma localização predeterminada entre a pluralidade de unidades de codificação. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode obter pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão de uma amostra em uma localização predeterminada em uma unidade de codificação e pode dividir a pluralidade de unidades de codificação, que são geradas pela divisão da unidade de codificação atual, usando pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão, que são obtidas a partir da amostra da localização predeterminada em cada uma da pluralidade de unidades de codificação. Ou seja, uma unidade de codificação pode ser dividida recursivamente com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão, que são obtidas a partir da amostra na localização predeterminada em cada unidade de codificação. Uma operação de divisão recursiva de uma unidade de codificação foi descrita anteriormente com referência à FIG. 5 e, portanto, as descrições detalhadas não serão fornecidas aqui.
[000118] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma ou mais unidades de codificação dividindo a unidade de codificação atual e pode determinar uma ordem de decodificação da uma ou mais unidades de codificação com base em um bloco predeterminado (por exemplo, a unidade de codificação atual).
[000119] A FIG. 7 ilustra uma ordem de processamento de uma pluralidade de unidades de codificação quando o aparelho de decodificação de imagem 100 determina a pluralidade de unidades de codificação dividindo uma unidade de codificação atual, de acordo com uma modalidade.
[000120] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar segundas unidades de codificação 710a e 710b dividindo uma primeira unidade de codificação 700 em uma direção vertical, pode determinar segundas unidades de codificação 730a e 730b dividindo a primeira unidade de codificação 700 em uma direção horizontal, ou pode determinar as segundas unidades de codificação 750a a 750d dividindo a primeira unidade de codificação 700 nas direções vertical e horizontal, com base nas informações de forma de bloco e nas informações do modo de forma de divisão.
[000121] Com referência à FIG. 7, o aparelho de decodificação de imagem 100 pode determinar o processamento das segundas unidades de codificação 710a e 710b, que são determinadas dividindo a primeira unidade de codificação 700 em uma direção vertical, em uma ordem de direção horizontal 710c. O aparelho de decodificação de imagem 100 pode determinar o processamento das segundas unidades de codificação 730a e 730b, que são determinadas dividindo a primeira unidade de codificação 700 em uma direção horizontal, em uma ordem de direção vertical 730c. O aparelho de decodificação de imagem 100 pode determinar o processamento das segundas unidades de codificação 750a a 750d, que são determinadas dividindo a primeira unidade de codificação 700 nas direções vertical e horizontal, em uma ordem predeterminada para processar unidades de codificação em uma linha e depois processar unidades de codificação em uma próxima linha (por exemplo, em uma ordem de varredura por digitalização ou ordem de digitalização Z 750€e).
[000122] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir recursivamente unidades de codificação. Com referência à FIG. 7, o aparelho de decodificação de imagem 100 pode determinar a pluralidade de segundas unidades de codificação 710a, 710b, 730a, 730b, 750a, 750b, 750c e 750d dividindo a primeira unidade de codificação 700 e pode dividir recursivamente cada uma da pluralidade determinada de segundas unidades de codificação 710a, 710b, 730a, 730b, 750a, 750b, 750c e 750d. Um método de divisão da pluralidade de segundas unidades de codificação 710a, 710b, 730a, 730b, 750a, 750b, 750c e 750d pode corresponder a um método de divisão da primeira unidade de codificação 700. Como tal, cada uma da pluralidade de segundas unidades de codificação 710a, 710b, 730a, 730b, 750a, 750b, 750c e 750d pode ser dividida independentemente em uma pluralidade de unidades de codificação. Com referência à FIG. 7, o aparelho de decodificação de imagem 100 pode determinar as segundas unidades de codificação 710a e 710b dividindo a primeira unidade de codificação 700 em uma direção vertical e pode determinar dividir independentemente ou não dividir cada uma das segundas unidades de codificação 710a e 710b.
[000123] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar terceiras unidades de codificação
720a e 720b dividindo a segunda unidade de codificação esquerda 710a em uma direção horizontal e não pode dividir a segunda unidade de codificação direita 710b.
[000124] De acordo com uma modalidade, uma ordem de processamento de unidades de codificação pode ser determinada com base em uma operação de divisão de uma unidade de codificação. Por outras palavras, uma ordem de processamento de unidades de codificação dividida pode ser determinada com base numa ordem de processamento de unidades de codificação imediatamente antes de serem divididas. O aparelho de decodificação de imagem 100 pode determinar uma ordem de processamento das terceiras unidades de codificação 720a e 720b determinadas pela divisão da segunda unidade de codificação esquerda 710a, independentemente da segunda unidade de codificação direita 710b. Como as terceiras unidades de codificação 720a e 720b são determinadas dividindo a segunda unidade de codificação esquerda 710a na direção horizontal, as terceiras unidades de codificação 720a e 720b podem ser processadas na ordem de direção vertical 720c. Como as segundas unidades de codificação esquerda e direita 710a e 710b são processadas na ordem de direção horizontal 7l10c, a segunda unidade de codificação direita 710b pode ser processada depois que as terceiras unidades de codificação 720a e 720b incluídas na segunda unidade de codificação esquerda 710a são processadas na ordem de direção vertical 720c. Uma operação de determinação de uma ordem de processamento de unidades de codificação com base em uma unidade de codificação antes de ser dividida não se limita ao exemplo descrito anteriormente e vários métodos podem ser utilizados para processar independentemente unidades de codificação, que são divididas e determinadas de várias formas, em uma ordem predeterminada.
[000125] AFIG.8 ilustra um processo, realizado pelo aparelho de decodificação de imagem 100, de determinar que uma unidade de codificação atual deve ser dividida em um número ímpar de unidades de codificação, quando as unidades de codificação não são processáveis em uma ordem predeterminada, de acordo com uma modalidade.
[000126] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar se a unidade de codificação atual é dividida em um número ímpar de unidades de codificação, com base em pelo menos uma das informações de forma de bloco e das informações obtidas no modo de forma de divisão. Com referência à FIG. 8, uma primeira unidade de codificação quadrada 800 pode ser dividida em segundas unidades de codificação não quadradas 810a e 810b e as segundas unidades de codificação 810a e 810b podem ser divididas independentemente em terceiras unidades de codificação 820a e 820b e 820c a 820e. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a pluralidade de terceiras unidades de codificação 820a e 820b dividindo a segunda unidade de codificação esquerda 810a em uma direção horizontal e pode dividir a segunda unidade de codificação direita 810b em um número ímpar de terceiras unidades de codificação 820c a 820e.
[000127] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar se alguma unidade de codificação é dividida em um número ímpar de unidades de codificação, determinando se as terceiras unidades de codificação 820a e 820b e 820c a 820e são processáveis em uma ordem predeterminada. Com referência à FIG. 8, o aparelho de decodificação de imagem 100 pode determinar as terceiras unidades de codificação 820a e 820b e 820c a 820e dividindo recursivamente a primeira unidade de codificação 800. O aparelho de decodificação de imagem 100 pode determinar se qualquer uma da primeira unidade de codificação 800, das segundas unidades de codificação 810a e 810b e das terceiras unidades de codificação 820a e 820b e 820c, 820d e 820e é dividida em um número ímpar de unidades de codificação, com base em pelo menos uma informação de forma de bloco e informações do modo de forma de divisão. Por exemplo, a segunda unidade de codificação direita 810b pode ser dividida em um número ímpar de terceiras unidades de codificação 820c, 820d e 820e. Uma ordem de processamento de uma pluralidade de unidades de codificação incluídas na primeira unidade de codificação 800 pode ser uma ordem predeterminada (por exemplo, uma ordem de digitalização Z 830), e o aparelho de decodificação de imagem 100 pode decidir se as terceiras unidades de codificação 820c, 820d e 820e, que são determinadas dividindo a segunda unidade de codificação direita 810b em um número ímpar de unidades de codificação, satisfazem uma condição para processamento na ordem predeterminada.
[000128] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar se as terceiras unidades de codificação 820a e 820b e 820c, 820d e 820e incluídas na primeira unidade de codificação 800 satisfazem a condição de processamento na ordem predeterminada e a condição se refere a se pelo menos uma de uma largura e altura das segundas unidades de codificação 810a e 810b é dividida ao meio ao longo de um limite das terceiras unidades de codificação 820a e 820b e 820c, 820d e 820e. Por exemplo, as terceiras unidades de codificação 820a e 820b determinadas pela divisão ao meio da altura da segunda unidade de codificação esquerda não quadrada 810a podem satisfazer a condição. No entanto, como os limites das terceiras unidades de codificação 820c, 820d e 820e determinados pela divisão da segunda unidade de codificação direita 810b em três unidades de codificação não dividem a largura ou a altura da segunda unidade de codificação direita 810b ao meio, pode ser determinado que as terceiras unidades de codificação 820c, 820d e 820e não atendem à condição. Quando a condição não é satisfeita como descrito acima, o aparelho de decodificação de imagem 100 pode decidir desconectar uma ordem de digitalização e determinar que a segunda unidade de codificação direita 810b é dividida em um número ímpar de unidades de codificação, com base no resultado da decisão. De acordo com uma modalidade, quando uma unidade de codificação é dividida em um número ímpar de unidades de codificação, o aparelho de decodificação de imagem 100 pode colocar uma restrição predeterminada em uma unidade de codificação em uma localização predeterminada entre as unidades de codificação divididas e a restrição ou a localização predeterminada foi descrita acima através de várias modalidades e, portanto, suas descrições detalhadas não serão fornecidas aqui.
[000129] AFIG. 9 ilustra um processo, realizado pelo aparelho de decodificação de imagem 100, de determinar pelo menos uma unidade de codificação dividindo uma primeira unidade de codificação 900, de acordo com uma modalidade.
[000130] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir a primeira unidade de codificação 900, com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão, que é obtida pelo obtenedor de fluxo contínuo de dados 110. A primeira unidade de codificação quadrada 900 pode ser dividida em quatro unidades de codificação quadradas ou pode ser dividida em uma pluralidade de unidades de codificação não quadradas. Por exemplo, referindo-se à FIG. 9, quando as informações de forma de bloco indicam que a primeira unidade de codificação 900 tem uma forma quadrada e as informações do modo de forma de divisão indicam para dividir a primeira unidade de codificação 900 em unidades de codificação não quadradas, o aparelho de decodificação de imagem 100 pode dividir a primeira unidade de codificação 900 em uma pluralidade de unidades de codificação não quadradas. Em detalhes, quando a informação do modo de forma de divisão indica para determinar um número ímpar de unidades de codificação dividindo a primeira unidade de codificação 900 em uma direção horizontal ou vertical, o aparelho de decodificação de imagem 100 pode dividir a primeira unidade de codificação quadrada 900 em um número ímpar de unidades de codificação, por exemplo, segundas unidades de codificação 910a, 910b e 910c determinadas pela divisão da primeira unidade de codificação quadrada 900 em uma direção vertical ou segundas unidades de codificação 920a, 920b e 920c determinadas pela divisão da primeira unidade de codificação quadrada 900 em uma direção horizontal.
[000131] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar se as segundas unidades de codificação 910a, 910b, 910c, 920a, 920b e 920c incluídas na primeira unidade de codificação 900 satisfazem uma condição para processamento em uma ordem predeterminada, e a condição se relaciona a se pelo menos uma de uma largura e altura da primeira unidade de codificação 900 é dividida ao meio ao longo de um limite das segundas unidades de codificação 910a, 910b, 910c, 920a, 920b e 920c. Com referência à FIG. 9, porque os limites das segundas unidades de codificação 910a, 910b e 910c determinados pela divisão da primeira unidade de codificação quadrada 900 em uma direção vertical não dividem a largura da primeira unidade de codificação 900 pela metade, pode ser determinado que a primeira unidade de codificação 900 não satisfaz a condição de processamento na ordem predeterminada. Além disso, como os limites das segundas unidades de codificação 920a, 920b e 920c determinados pela divisão da primeira unidade de codificação quadrada 900 em uma direção horizontal não dividem a largura da primeira unidade de codificação 900 pela metade, pode ser determinado que a primeira unidade de codificação 900 não satisfaz a condição de processamento na ordem predeterminada. Quando a condição não é satisfeita como descrito acima, o aparelho de decodificação de imagem 100 pode decidir desconectar uma ordem de digitalização e pode determinar que a primeira unidade de codificação 900 é dividida em um número ímpar de unidades de codificação, com base no resultado da decisão. De acordo com uma modalidade, quando uma unidade de codificação é dividida em um número ímpar de unidades de codificação, o aparelho de decodificação de imagem 100 pode colocar uma restrição predeterminada em uma unidade de codificação em uma localização predeterminada entre as unidades de codificação divididas e a restrição ou a localização predeterminada foi descrita acima através de várias modalidades e, portanto, suas descrições detalhadas não serão fornecidas aqui.
[000132] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar unidades de codificação de várias formas dividindo uma primeira unidade de codificação.
[000133] Com referência à FIG. 9, o aparelho de decodificação de imagem 100 pode dividir a primeira unidade de codificação quadrada 900 ou uma primeira unidade de codificação não quadrada 930 ou 950 em unidades de codificação de vários formatos.
[000134] AFIG.10ilustra que uma forma na qual uma segunda unidade de codificação é divisível pelo aparelho de decodificação de imagem 100 é restrita quando uma segunda unidade de codificação com uma forma não quadrada, que é determinada pela divisão de uma primeira unidade de codificação 1000, satisfaz uma condição predeterminada, de acordo com uma modalidade.
[000135] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar dividir a primeira unidade de codificação quadrada 1000 em segundas unidades de codificação não quadradas 1010a, 1010b, 1020a e 1020b, com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão, que são obtidas pelo obtenedor de fluxo contínuo de dados 110. As segundas unidades de codificação 1010a, 1010b, 1020a e 1020b podem ser divididas independentemente.
Como tal, o aparelho de decodificação de imagem 100 pode determinar dividir ou não dividir a primeira unidade de codificação 1000 em uma pluralidade de unidades de codificação, com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão de cada uma das segundas unidades de codificação 1010a, 1010b, 1020a e 1020b.
De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar terceiras unidades de codificação 1012a e 1012b dividindo a segunda unidade de codificação esquerda não quadrada 1010a, que é determinada dividindo a primeira unidade de codificação 1000 em uma direção vertical, em uma direção horizontal.
No entanto, quando a segunda unidade de codificação esquerda 1010a é dividida na direção horizontal, o aparelho de decodificação de imagem 100 pode restringir a segunda unidade de codificação direita 1010b a não ser dividida na direção horizontal na qual a segunda unidade de codificação esquerda 1010a é dividida.
Quando as terceiras unidades de codificação 1014a e 1014b são determinadas dividindo a segunda unidade de codificação direita 1010b na mesma direção, porque as segundas unidades de codificação esquerda e direita 1010a e 1010b são divididas independentemente na direção horizontal, as terceiras unidades de codificação 1012a, 1012b, 1014a e 1014b podem ser determinadas.
No entanto, este caso serve igualmente como um caso em que o aparelho de decodificação de imagem 100 divide a primeira unidade de codificação 1000 em quatro segundas unidades de codificação quadradas 1030a, 1030b, 1030c e 1030d, com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão e pode ser ineficiente em termos de decodificação de imagem.
[000136] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar terceiras unidades de codificação 1022a, 1022b, 1024a e 1024b dividindo a segunda unidade de codificação não quadrada 1020a ou 1020b, que é determinada dividindo a primeira unidade de codificação 1000 em uma direção horizontal, em uma direção vertical. No entanto, quando uma segunda unidade de codificação (por exemplo, a segunda unidade de codificação superior 1020a) é dividida na direção vertical, pelo motivo acima descrito, o aparelho de decodificação de imagem 100 pode restringir a outra segunda unidade de codificação (por exemplo, a segunda codificação inferior 1020b) para não ser dividida na direção vertical na qual a segunda unidade de codificação superior 1020a é dividida.
[000137] A FIG. 11 ilustra um processo, realizado pelo aparelho de decodificação de imagem 100, de dividir uma unidade de codificação quadrada quando as informações do modo de forma de divisão indicam que a unidade de codificação quadrada não deve ser dividida em quatro unidades de codificação quadradas, de acordo com uma modalidade.
[000138] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar segundas unidades de codificação 1110a, 1110b, 1120a, 1120b, etc. dividindo uma primeira unidade de codificação 1100 com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão. As informações do modo de forma de divisão podem incluir as informações sobre vários métodos de divisão de uma unidade de codificação, mas as informações sobre os vários métodos de divisão podem não incluir as informações de dividir uma unidade de codificação em quatro unidades de codificação quadradas. De acordo com essas informações do modo de forma de divisão, o aparelho de decodificação de imagem 100 não pode dividir a primeira unidade de codificação quadrada 1100 em quatro segundas unidades de codificação quadradas 1130a, 1130b, 1130c e 1130d. O aparelho de decodificação de imagem 100 pode determinar as segundas unidades de codificação não quadradas 1110a, 1110b, 1120a, 1120b, etc., com base nas informações do modo de forma de divisão.
[000139] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir independentemente as segundas unidades de codificação não quadradas 1110a, 1110b, 1120a, 1120b, etc. Cada uma das segundas unidades de codificação 1110a, 1110b, 1120a, 1120b, etc. pode ser dividida recursivamente em uma ordem predeterminada e esse método de divisão pode corresponder a um método de divisão da primeira unidade de codificação 1100, com base em pelo menos uma das informações de forma de bloco e das informações do modo de forma de divisão.
[000140] Por exemplo, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação quadrada 1112a e 1112b dividindo a segunda unidade de codificação esquerda 1110a em uma direção horizontal e pode determinar a terceira unidade de codificação quadrada 1114a e 1114b dividindo a segunda unidade de codificação direita 1110b em uma direção horizontal. Além disso, o aparelho de decodificação de imagem 100 pode determinar as terceiras unidades de codificação quadradas l1116a, 1116b, l116c e l1l16ddividindo as segundas unidades de codificação tanto esquerda quanto direita 1110a e 1110b na direção horizontal. Neste caso, podem ser determinadas unidades de codificação que têm a mesma forma que as quatro unidades de codificação quadradas 1130a, 1130b, 1130c e 1130d divididas da primeira unidade de codificação 1100.
[000141] Como outro exemplo, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação quadrada 1122a e 1122b dividindo a segunda unidade de codificação superior 1120a em uma direção vertical e pode determinar a terceira unidade de codificação quadrada 1124a e 1124b dividindo a segunda unidade de codificação inferior 1120b em uma direção vertical. Além disso, o aparelho de decodificação de imagem 100 pode determinar as terceiras unidades de codificação quadradas 1126a, 1126b, l1126c e 1126d dividindo as segundas unidades de codificação tanto superior quanto inferior 1120a e 1120b em uma direção vertical. Neste caso, podem ser determinadas unidades de codificação que têm a mesma forma que as quatro unidades de codificação quadradas 1130a, 1130b, 1130c e 1130d divididas da primeira unidade de codificação 1100.
[000142] A FIG. 12 ilustra que uma ordem de processamento entre uma pluralidade de unidades de codificação pode ser alterada dependendo de um processo de divisão de uma unidade de codificação, de acordo com uma modalidade.
[000143] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir uma primeira unidade de codificação 1200, com base em informações de forma de bloco e informações do modo de forma de divisão. Quando as informações da forma de bloco indicam uma forma quadrada e as informações do modo de forma de divisão indicam dividir a primeira unidade de codificação 1200 em pelo menos uma das direções horizontal e vertical, o aparelho de decodificação de imagem 100 pode determinar as segundas unidades de codificação 1210a, 1210b, 1220a, 1220b, etc. dividindo a primeira unidade de codificação 1200. Com referência à FIG. 12, as segundas unidades de codificação não quadradas 1210a, 1210b, 1220a e 1220b determinadas pela divisão da primeira unidade de codificação 1200 em apenas uma direção horizontal ou vertical podem ser divididas independentemente com base nas informações de forma de bloco e nas informações do modo de forma de divisão de cada unidade de codificação. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar as terceiras unidades de codificação 1216a, 1216b, 1216c e 1216d dividindo as segundas unidades de codificação 1210a e 1210b, que são geradas dividindo a primeira unidade de codificação 1200 em uma direção vertical, em uma direção horizontal e pode determinar terceiras unidades de codificação 1226a, 1226b, 1226c e 1226d dividindo as segundas unidades de codificação 1220a e 1220b, que são geradas dividindo a primeira unidade de codificação 1200 em uma direção horizontal, em uma direção horizontal. Uma operação de divisão das segundas unidades de codificação 1210a, 1210b, 1220a e 1220b foi descrita acima com referência à FIG. 11 e, portanto, descrições detalhadas não serão fornecidas aqui.
[000144] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode processar unidades de codificação em uma ordem predeterminada. Uma operação de processamento de unidades de codificação em uma ordem predeterminada foi descrita acima com referência à FIG. 7 e, portanto, descrições detalhadas não serão fornecidas aqui. Com referência à FIG. 12, o aparelho de decodificação de imagem 100 pode determinar quatro terceiras unidades de codificação quadradas 1216a, 1216b, 1216c e 1216d e 1226a, 1226b, 1226c e 1226d dividindo a primeira unidade de codificação quadrada 1200. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar ordens de processamento das terceiras unidades de codificação 1216a, 1216b, 1216c e 1216d e 1226a, 1226b, 1226c e 1226d com base em um método de divisão da primeira unidade de codificação 1200.
[000145] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar as terceiras unidades de codificação 1216a, 1216b, 1216c e 1216d dividindo as segundas unidades de codificação 1210a e 1210b geradas pela divisão da primeira unidade de codificação 1200 na direção vertical, na direção horizontal e pode processar as terceiras unidades de codificação 1216a, 1216b, 1216c e 1216d em uma ordem de processamento 1217 para processar inicialmente as terceiras unidades de codificação 1216a e 1216c, incluídas na segunda unidade de codificação esquerda 1210a, na direção vertical e, em seguida, processar a terceira unidade de codificação 1216b e 1216d, que estão incluídas na segunda unidade de codificação 1210b direita, na direção vertical.
[000146] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar as terceiras unidades de codificação 1226a, 1226b, 1226c e 1226d dividindo as segundas unidades de codificação 1220a e 1220b geradas pela divisão da primeira unidade de codificação 1200 em uma direção horizontal, em uma direção vertical e pode processar as terceiras unidades de codificação 1226a, 1226b, 1226c e 1226d em uma ordem de processamento 1227 para processar inicialmente as terceiras unidades de codificação 1226a e 1226b, que estão incluídas na segunda unidade de codificação superior 1220a,em uma direção horizontal e depois processar a terceira unidade de codificação 1226c e 1226d, que estão incluídas na segunda unidade de codificação inferior 1220b, em uma direção horizontal.
[000147] Com referência à FIG. 12, as terceiras unidades de codificação quadradas 1216a, 1216b, 1216c e 1216d e 1226a, 1226b, 1226c e 1226d podem ser determinadas dividindo as segundas unidades de codificação 1210a, 1210b, 1220a e 1220b, respectivamente. Embora as segundas unidades de codificação 1210a e 1210b sejam determinadas dividindo a primeira unidade de codificação 1200 em uma direção vertical diferente das segundas unidades de codificação 1220a e 1220b que são determinadas pela divisão da primeira unidade de codificação 1200 em uma direção horizontal, as terceiras unidades de codificação 1216a, 1216b, 1216c e 1216d e 1226a, 1226b, 1226c e 1226d divididas a partir daí, eventualmente, mostram as unidades de codificação com a mesma forma de divisão da primeira unidade de codificação 1200. Como tal, dividindo recursivamente uma unidade de codificação de maneiras diferentes, com base em pelo menos uma das informações de forma de bloco e das informações de forma de divisão, o aparelho de decodificação de imagem 100 pode processar uma pluralidade de unidades de codificação em ordens diferentes, mesmo quando as unidades de codificação são finalmente determinadas como tendo a mesma forma.
[000148] A FIG. 13 ilustra um processo de determinação de uma profundidade de uma unidade de codificação como uma forma e um tamanho da unidade de codificação alterada, quando a unidade de codificação é dividida recursivamente de tal modo que uma pluralidade de unidades de codificação seja determinada, de acordo com uma modalidade.
[000149] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a profundidade da unidade de codificação, com base em um critério predeterminado. Por exemplo, o critério predeterminado pode ser o comprimento de um lado longo da unidade de codificação. Quando o comprimento de um lado longo de uma unidade de codificação antes de ser dividido é 2n vezes (n> 0) o comprimento de um lado comprido de uma unidade de codificação atual de divisão, o aparelho de decodificação de imagem 100 pode determinar que uma profundidade da unidade de codificação atual é aumentada a partir de uma profundidade da unidade de codificação antes de ser dividida, por n. Na descrição a seguir, uma unidade de codificação com uma profundidade aumentada é expressa como uma unidade de codificação com uma profundidade mais profunda.
[000150] Com referência à FIG. 13, de acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma segunda unidade de codificação 1302, uma terceira unidade de codificação 1304, etc. de profundidades mais profundas dividindo uma primeira unidade de codificação quadrada 1300 com base em informações de forma de bloco indicando uma forma quadrada (por exemplo, as informações da forma do bloco podem ser expressas como '0: SQUARE'). Supondo que o tamanho da primeira unidade de codificação quadrada 1300 seja 2Nx2N, a segunda unidade de codificação 1302 determinada dividindo uma largura e altura da primeira unidade de codificação 1300 a 1/2 pode ter um tamanho de NxN. Além disso, a terceira unidade de codificação 1304 determinada pela divisão de uma largura e altura da segunda unidade de codificação 1302 a 1/2 pode ter um tamanho de N/2 x N/2. Neste caso, uma largura e altura da terceira unidade de codificação 1304 são 1/4 vezes as da primeira unidade de codificação 1300. Quando uma profundidade da primeira unidade de codificação 1300 é D, uma profundidade da segunda unidade de codificação 1302, cuja largura e altura são 1/2 vezes as da primeira unidade de codificação 1300, pode ser D+1 e uma profundidade da terceira unidade de codificação 1304, cuja largura e altura são 1/4 vezes as da primeira unidade de codificação 1300, pode ser D+2.
[000151] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma segunda unidade de codificação 1312 ou 1322, uma terceira unidade de codificação 1314 ou 1324, etc., de profundidades mais profundas dividindo uma primeira unidade de codificação não quadrada 1310 ou 1320 com base em informações da forma do bloco indicando uma forma não quadrada (por exemplo, as informações da forma do bloco podem ser expressas como '1:NS VER' indicando uma forma não quadrada, cuja altura é maior que uma largura ou como '2:NS HOR' indicando uma forma não quadrada, cuja largura é maior que uma altura).
[000152] O aparelho de decodificação de imagem 100 pode determinar a segunda unidade de codificação 1302, 1312 ou 1322 dividindo pelo menos uma de uma largura e altura da primeira unidade de codificação 1310 tendo um tamanho de Nx2N. Ou seja, o aparelho de decodificação de imagem 100 pode determinar a segunda unidade de codificação 1302 com um tamanho de NxN ou a segunda unidade de codificação 1322 com um tamanho de NxN/2 dividindo a primeira unidade de codificação 1310 em uma direção horizontal, ou pode determinar a segunda unidade de codificação 1312 tendo um tamanho de N/2xN dividindo a primeira unidade de codificação 1310 nas direções horizontal e vertical.
[000153] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a segunda unidade de codificação 1302, 1312 ou 1322 dividindo pelo menos uma de uma largura e altura da primeira unidade de codificação 1320 com um tamanho de 2NxN. Ou seja, o aparelho de decodificação de imagem 100 pode determinar a segunda unidade de codificação 1302 com um tamanho de NxN ou a segunda unidade de codificação 1312 com um tamanho de N/2xN dividindo a primeira unidade de codificação 1320 em uma direção vertical, ou pode determinar a segunda unidade de codificação 1322 com um tamanho de NxN/2 dividindo a primeira unidade de codificação 1320 nas direções horizontal e vertical.
[000154] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação 1304, 1314 ou 1324 dividindo pelo menos uma de uma largura e altura da segunda unidade de codificação 1302 tendo um tamanho de NxN.
Ou seja, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação 1304 tendo um tamanho de N/2xN/2, a terceira unidade de codificação 1314 tendo um tamanho de N/4xN/2 ou a terceira unidade de codificação 1324 tendo um tamanho de N/2xN/4 dividindo a segunda unidade de codificação 1302 nas direções vertical e horizontal.
[000155] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação 1304, 1314 ou 1324 dividindo pelo menos uma de uma largura e altura da segunda unidade de codificação 1312 tendo um tamanho de N/2xN. Ou seja, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação 1304 tendo um tamanho de N/2xN/2 ou a terceira unidade de codificação 1324 tendo um tamanho de N/2xN/4 dividindo a segunda unidade de codificação 1312 em uma direção horizontal, ou pode determinar a terceira unidade de codificação 1314 tendo um tamanho de N/4xN/2 dividindo a segunda unidade de codificação 1312 nas direções vertical e horizontal.
[000156] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação 1304, 1314 ou 1324 dividindo pelo menos uma de uma largura e altura da segunda unidade de codificação 1322 tendo um tamanho de NxN/2. Ou seja, o aparelho de decodificação de imagem 100 pode determinar a terceira unidade de codificação 1304 tendo um tamanho de N/2xN/2 ou a terceira unidade de codificação 1314 tendo um tamanho de N/4xN/2 dividindo a segunda unidade de codificação 1322 numa direção vertical, ou pode determinar a terceira unidade de codificação 1324 tendo um tamanho de N/2xN/4 dividindo a segunda unidade de codificação 1322 nas direções vertical e horizontal.
[000157] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir a unidade de codificação quadrada 1300,
1302 ou 1304 em uma direção horizontal ou vertical. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar a primeira unidade de codificação 1310 com um tamanho de Nx2N dividindo a primeira unidade de codificação 1300 com um tamanho de 2Nx2N em uma direção vertical, ou pode determinar a primeira unidade de codificação 1320 tendo um tamanho de 2N*xN dividindo a primeira unidade de codificação 1300 em uma direção horizontal. De acordo com uma modalidade, quando uma profundidade é determinada com base no comprimento do lado mais longo de uma unidade de codificação, uma profundidade de uma unidade de codificação determinada dividindo a primeira unidade de codificação 1300 tendo um tamanho de 2Nx2N na direção horizontal ou vertical pode ser a mesma que a profundidade da primeira unidade de codificação 1300.
[000158] De acordo com uma modalidade, uma largura e altura da terceira unidade de codificação 1314 ou 1324 podem ser 1/4 vezes as da primeira unidade de codificação 1310 ou 1320. Quando uma profundidade da primeira unidade de codificação 1310 ou 1320 é D, uma profundidade da segunda unidade de codificação 1312 ou 1322, cuja largura e altura são 1/2 vezes as da primeira unidade de codificação 1310 ou 1320, pode ser D+1 e uma profundidade da terceira unidade de codificação 1314 ou 1324, cuja largura e altura são 1/4 vezes as da primeira unidade de codificação 1310 ou 1320, pode ser D+2.
[000159] AFIG.14ilustra profundidades que são determináveis com base em formas e tamanhos de unidades de codificação e índices de parte (PIDs) que são para distinguir as unidades de codificação, de acordo com uma modalidade.
[000160] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar segundas unidades de codificação de várias formas dividindo uma primeira unidade de codificação quadrada 1400. Com referência à FIG. 14, o aparelho de decodificação de imagem 100 pode determinar segundas unidades de codificação 1402a e 1402b, 1404a e 1404b e 1406a, 1406b, 1406c e 1406d dividindo a primeira unidade de codificação 1400 em pelo menos uma das direções vertical e horizontal com base nas informações do modo de forma de divisão. Ou seja, o aparelho de decodificação de imagem 100 pode determinar as segundas unidades de codificação 1402a e 1402b, 1404a e 1404b e 1406a, 1406b, 1406c e 1406d, com base nas informações do modo de forma de divisão da primeira unidade de codificação 1400.
[000161] De acordo com uma modalidade, uma profundidade das segundas unidades de codificação 1402a e 1402b, l1404a e 1404b e 1406a, 1406b, l1406c e 1406d, que são determinadas com base nas informações do modo de forma de divisão da primeira unidade de codificação quadrada 1400, pode ser determinada com base no comprimento de um lado comprido. Por exemplo, porque o comprimento de um lado da primeira unidade de codificação quadrada 1400 é igual ao comprimento de um lado longo das segundas unidades de codificação não quadradas 1402a e 1402b e 1404a e 1404b, a primeira unidade de codificação 1400 e as segundas unidades de codificação não quadradas 1402a e 1402b e 1404a e 1404b podem ter a mesma profundidade, por exemplo, D. No entanto, quando o aparelho de decodificação de imagem 100 divide a primeira unidade de codificação 1400 nas quatro unidades de codificação quadradas 1406a, 1406b, 1406c e 1406d com base nas informações do modo de forma de divisão, porque o comprimento de um lado das segundas unidades de codificação quadradas 1406a, 1406b, 1406c e 1406d é 1/2 vez o comprimento de um lado da primeira unidade de codificação 1400, uma profundidade das segundas unidades de codificação 1406a, 1406b, 1406c e 1406d pode ser D+1, que é mais profunda que a profundidade D da primeira unidade de codificação 1400 por 1.
[000162] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma pluralidade de segundas unidades de codificação 1412a e 1412b e 1414a, 1414b e 1414c dividindo uma primeira unidade de codificação 1410, cuja altura é maior que uma largura, em uma direção horizontal com base nas informações do modo de forma de divisão. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma pluralidade de segundas unidades de codificação 1422a e 1422b e l1424a, l1424b e 1424c dividindo uma primeira unidade de codificação 1420, cuja largura é maior que uma altura, numa direção vertical com base nas informações do modo de forma de divisão.
[000163] De acordo com uma modalidade, uma profundidade das segundas unidades de codificação 1412a e 1412b, 1414a, l1414be l414c, 1422a e 1422b e 1424a, 1424b e 1424c, que são determinadas com base nas informações do modo de forma de divisão da primeira unidade de codificação não quadrada 1410 ou 1420, pode ser determinada com base no comprimento de um lado longo da mesma. Por exemplo, porque o comprimento de um lado das segundas unidades de codificação quadradas 1412a e 1412b é 1/2 vezes o comprimento de um lado longo da primeira unidade de codificação 1410 com uma forma não quadrada, cuja altura é maior que uma largura, uma profundidade das segundas unidades de codificação quadradas 1412a e 1412b é D+1, que é mais profunda que a profundidade D da primeira unidade de codificação não quadrada 1410 por 1.
[000164] Alémdisso, o aparelho de decodificação de imagem 100 pode dividir a primeira unidade de codificação não quadrada 1410 em um número ímpar de segundas unidades de codificação l414a, 1414b e 1414c com base nas informações do modo de forma de divisão. O número ímpar de segundas unidades de codificação l1414a, 1414b e l1414c pode incluir as segundas unidades de codificação não quadradas l414a e l4l14c e a segunda unidade de codificação quadrada 1414b. Nesse caso, porque o comprimento de um lado longo das segundas unidades de codificação não quadradas l414a e l1414c e o comprimento de um lado da segunda unidade de codificação quadrada 1414b são 1/2 vezes o comprimento de um lado longo da primeira unidade de codificação 1410, uma profundidade das segundas unidades de codificação l414a, 1414b e l1414c pode ser D+1, que é mais profunda que a profundidade D da primeira unidade de codificação não quadrada 1410 por 1. O aparelho de decodificação de imagem 100 pode determinar as profundidades das unidades de codificação divididas a partir da primeira unidade de codificação 1420 com uma forma não quadrada, cuja largura é maior que uma altura, usando o método descrito acima para determinar as profundidades das unidades de codificação divididas a partir da primeira unidade de codificação 1410.
[000165] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar PIDs para identificar unidades de codificação divididas, com base em uma razão de tamanho entre as unidades de codificação quando um número ímpar de unidades de codificação divididas não tem tamanhos iguais. Com referência à FIG. 14, a unidade de codificação 1414b de uma localização central entre o número ímpar de unidades de codificação divididas l414a, 1414b e 1414c pode ter uma largura igual à das outras unidades de codificação 1414a e 1414c e uma altura que é duas vezes a das outras unidades de codificação 1414a e 1414c. Ou seja, neste caso, a unidade de codificação 1414b na localização central pode incluir duas das outras unidades de codificação l1414a ou l414c. Portanto, quando um PID da unidade de codificação 1414b na localização central é 1 com base em uma ordem de digitalização, um PID da unidade de codificação 1414c localizado próximo à unidade de codificação 1414b pode ser aumentado em 2 e, portanto, pode ser 3. Ou seja, a descontinuidade nos valores de PID pode estar presente. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar se um número ímpar de unidades de codificação divididas não tem tamanhos iguais, com base na descontinuidade presente nos PIDs para identificar as unidades de codificação divididas.
[000166] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar se deve usar um método de divisão específico, com base em valores de PID para identificar uma pluralidade de unidades de codificação determinadas pela divisão de uma unidade de codificação atual. Com referência à FIG. 14, o aparelho de decodificação de imagem 100 pode determinar um número par de unidades de codificação 1412a e 1412b ou um número ímpar de unidades de codificação l1414a, 1414be l414c dividindo a primeira unidade de codificação 1410 com uma forma retangular, cuja altura é maior que uma largura. O aparelho de decodificação de imagem 100 pode usar PIDs para identificar as respectivas unidades de codificação. De acordo com uma modalidade, o PID pode ser obtido de uma amostra de uma localização predeterminada (por exemplo, uma amostra superior esquerda) de cada unidade de codificação.
[000167] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma unidade de codificação em uma localização predeterminada entre as unidades de codificação divididas, usando os PIDs para distinguir as unidades de codificação. De acordo com uma modalidade, quando a informação do modo de forma de divisão da primeira unidade de codificação 1410 tendo uma forma retangular, cuja altura é maior que uma largura, indica dividir uma unidade de codificação em três unidades de codificação, oO aparelho de decodificação de imagem 100 pode dividir a primeira unidade de codificação 1410 em três unidades de codificação l414a, 1414b e l1414c. O aparelho de decodificação de imagem 100 pode atribuir um PID a cada uma das três unidades de codificação l414a, 1414b e l1414c.
O aparelho de decodificação de imagem 100 pode comparar PIDs de um número ímpar de unidades de codificação divididas para determinar uma unidade de codificação em uma localização central entre as unidades de codificação.
O aparelho de decodificação de imagem 100 pode determinar a unidade de codificação 1414b tendo um PID correspondente a um valor médio entre os PIDs das unidades de codificação, como a unidade de codificação na localização central entre as unidades de codificação determinadas dividindo a primeira unidade de codificação 1410. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar PIDs para distinguir unidades de codificação divididas, com base em uma razão de tamanho entre as unidades de codificação quando as unidades de codificação divididas não têm tamanhos iguais.
Com referência à FIG. 14, a unidade de codificação 1414b gerada pela divisão da primeira unidade de codificação 1410 pode ter uma largura igual à das outras unidades de codificação 1414a e l1414c e uma altura que é duas vezes a das outras unidades de codificação l414a e l1414c.
Nesse caso, quando o PID da unidade de codificação 1414b na localização central é 1, o PID da unidade de codificação l1414c localizado próximo à unidade de codificação 1414b pode ser aumentado em 2 e, portanto, pode ser 3. Quando o PID não é aumentado uniformemente como descrito acima, o aparelho de decodificação de imagem 100 pode determinar que uma unidade de codificação é dividida em uma pluralidade de unidades de codificação, incluindo uma unidade de codificação com um tamanho diferente do das outras unidades de codificação.
De acordo com uma modalidade, quando as informações do modo de forma de divisão indicam dividir uma unidade de codificação em um número ímpar de unidades de codificação, o aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação atual de tal maneira que uma unidade de codificação de uma localização predeterminada (por exemplo, uma unidade de codificação de uma localização central) entre um número ímpar de unidades de codificação tem um tamanho diferente do das outras unidades de codificação. Neste caso, o aparelho de decodificação de imagem 100 pode determinar a unidade de codificação da localização central, que tem um tamanho diferente, usando PIDs das unidades de codificação. No entanto, o PID e o tamanho ou localização da unidade de codificação localização predeterminada a ser determinado não se limitam aos exemplos descritos acima, e vários PIDs e vários locais e tamanhos de unidades de codificação podem ser utilizados.
[000168] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar uma unidade de dados predeterminada em que uma unidade de codificação começa a ser dividida recursivamente.
[000169] A FIG. 15 ilustra que uma pluralidade de unidades de codificação é determinada com base em uma pluralidade de unidades de dados predeterminadas incluídas em uma imagem, de acordo com uma modalidade.
[000170] De acordo com uma modalidade, uma unidade de dados predeterminada pode ser definida como uma unidade de dados em que uma unidade de codificação começa a ser dividida recursivamente usando pelo menos um de informações de forma de bloco e informações do modo de forma de divisão. Ou seja, a unidade de dados predeterminada pode corresponder a uma unidade de codificação com uma profundidade mais alta, a qual é usada para determinar uma pluralidade de unidades de codificação divididas a partir de uma imagem atual. Nas descrições a seguir, para facilitar a explicação, a unidade de dados predeterminada é referida como uma unidade de dados de referência.
[000171] De acordo com uma modalidade, a unidade de dados de referência pode ter um tamanho predeterminado e uma forma predeterminada. De acordo com uma modalidade, a unidade de dados de referência pode incluir amostras MxN. Aqui, Me N podem ser iguais entre si e podem ser números inteiros expressos como potências de
2. Ou seja, a unidade de dados de referência pode ter uma forma quadrada ou não quadrada e pode ser dividida em um número inteiro de unidades de codificação.
[000172] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir a imagem atual em uma pluralidade de unidades de dados de referência. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir a pluralidade de unidades de dados de referência, que são divididas da imagem atual, usando informações do modo de forma de divisão para cada unidade de dados de referência. A operação de dividir a unidade de dados de referência pode corresponder a uma operação de divisão usando uma estrutura de quadtree.
[000173] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar previamente um tamanho mínimo permitido para as unidades de dados de referência incluídas na imagem atual. Por conseguinte, o aparelho de decodificação de imagem 100 pode determinar várias unidades de dados de referência com tamanhos iguais ou maiores que o tamanho mínimo e pode determinar uma ou mais unidades de codificação usando as informações do modo de forma de divisão e informações de forma de bloco com referência à unidade de dados de referência determinada.
[000174] Com referência à FIG. 15, o aparelho de decodificação de imagem 100 pode usar uma unidade de codificação de referência quadrada 1500 ou uma unidade de codificação de referência não quadrada 1502. De acordo com uma modalidade, a forma e o tamanho das unidades de codificação de referência podem ser determinadas com base em várias unidades de dados capazes de incluir uma ou mais unidades de codificação de referência (por exemplo, sequências, imagens, fatias, segmentos de fatia, unidades de codificação maiores ou semelhantes).
[000175] De acordo com uma modalidade, o obtenedor de fluxo contínuo de dados 110 do aparelho de decodificação de imagem 100 pode obter, a partir de um fluxo contínuo de dados, pelo menos uma das informações de forma da unidade de codificação de referência e informações de tamanho da unidade de codificação de referência em relação a cada uma das várias unidades de dados. Uma operação de determinação de uma ou mais unidades de codificação incluídas na unidade de codificação de referência quadrada 1500 foi descrita acima em relação à operação de divisão da unidade de codificação atual 300 da FIG. 3, e uma operação de determinação de uma ou mais unidades de codificação incluídas na unidade de codificação de referência não quadrada 1502 foi descrita acima em relação à operação de divisão da unidade de codificação atual 400 ou 450 da FIG. 4 e, portanto, descrições detalhadas não serão fornecidas aqui.
[000176] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar um PID para identificar o tamanho e a forma das unidades de codificação de referência, para determinar o tamanho e a forma das unidades de codificação de referência de acordo com algumas unidades de dados previamente determinadas com base em uma condição predeterminada. Ou seja, o obtenedor de fluxo contínuo de dados 110 pode obter, a partir do fluxo contínuo de dados, apenas o PID para identificar o tamanho e a forma das unidades de codificação de referência em relação a cada fatia, segmento de fatia ou unidade de codificação maior que é uma unidade de dados que satisfaz uma condição predeterminada (por exemplo, uma unidade de dados com um tamanho igual ou menor que uma fatia) entre as várias unidades de dados (por exemplo, sequências, imagens, fatias segmentos de fatia, unidades de codificação maiores ou semelhantes). O aparelho de decodificação de imagem 100 pode determinar o tamanho e a forma das unidades de dados de referência em relação a cada unidade de dados, que satisfaz a condição predeterminada, usando o PID. Quando as informações de formato da unidade de codificação de referência e as informações de tamanho da unidade de codificação de referência são obtidas e usadas no fluxo contínuo de dados de acordo com cada unidade de dados com um tamanho relativamente pequeno, a eficiência do uso do fluxo contínuo de dados pode não ser alta e, portanto, apenas o PID pode ser obtido e usado em vez de obter diretamente as informações de formato da unidade de codificação de referência e as informações de tamanho da unidade de codificação de referência. Nesse caso, pelo menos uma das dimensões e formas das unidades de codificação de referência correspondentes ao PID para identificação do tamanho e da forma das unidades de codificação de referência pode ser determinada previamente. Ou seja, o aparelho de decodificação de imagem 100 pode determinar pelo menos um do tamanho e formato das unidades de codificação de referência incluídas em uma unidade de dados que serve como uma unidade para obter o PID, selecionando pelo menos um do tamanho e da forma determinados anteriormente das unidades de codificação de referência com base no PID.
[000177] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar uma ou mais unidades de codificação de referência incluídas em uma unidade de codificação maior. Ou seja, uma unidade de codificação maior dividida de uma imagem pode incluir uma ou mais unidades de codificação de referência e as unidades de codificação podem ser determinadas dividindo recursivamente cada unidade de codificação de referência. De acordo com uma modalidade, pelo menos uma de uma largura e altura da maior unidade de codificação pode ser um número inteiro vezes pelo menos uma da largura e altura das unidades de codificação de referência. De acordo com uma modalidade, o tamanho das unidades de codificação de referência pode ser obtido dividindo a maior unidade de codificação n vezes com base em uma estrutura de quadtree. Ou seja, o aparelho de decodificação de imagem 100 pode determinar as unidades de codificação de referência dividindo a maior unidade de codificação n vezes com base em uma estrutura de quadtree e pode dividir a unidade de codificação de referência com base em pelo menos uma das informações de forma de bloco e as informações do modo de forma de divisão de acordo com várias modalidades.
[000178] AFIG.16ilustra um bloco de processamento que serve como uma unidade para determinar uma ordem de determinação das unidades de codificação de referência incluídas em uma imagem 1600, de acordo com uma modalidade.
[000179] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar um ou mais blocos de processamento separados de uma imagem. O bloco de processamento é uma unidade de dados que inclui uma oumais unidades de codificação de referência divididas em uma imagem e as uma ou mais unidades de codificação de referência incluídas no bloco de processamento podem ser determinadas de acordo com uma ordem específica. Ou seja, uma ordem de determinação de uma ou mais unidades de codificação de referência determinadas em cada bloco de processamento pode corresponder a um dos vários tipos de ordens para determinar as unidades de codificação de referência e pode variar dependendo do bloco de processamento. A ordem de determinação das unidades de codificação de referência, que é determinada em relação a cada bloco de processamento, pode ser uma de várias ordens, por exemplo, digitalização por varredura, digitalização Z, digitalização N, digitalização diagonal vertical direita, digitalização horizontal e digitalização vertical , mas não se limita às ordens de digitalização mencionadas acima.
[000180] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode obter informações de tamanho de bloco de processamento e pode determinar o tamanho de um ou mais blocos de processamento incluídos na imagem. O aparelho de decodificação de imagem 100 pode obter as informações de tamanho do bloco de processamento a partir de um fluxo contínuo de dados e pode determinar o tamanho de um ou mais blocos de processamento incluídos na imagem. O tamanho dos blocos de processamento pode ser um tamanho predeterminado das unidades de dados, o que é indicado pelas informações de tamanho do bloco de processamento.
[000181] De acordo com uma modalidade, o obtenedor de fluxo contínuo de dados 110 do aparelho de decodificação de imagem 100 pode obter as informações de tamanho do bloco de processamento do fluxo contínuo de dados de acordo com cada unidade de dados específica. Por exemplo, as informações de tamanho do bloco de processamento podem ser obtidas do fluxo contínuo de dados em uma unidade de dados como uma imagem, sequência, imagem, fatia ou segmento de fatia. Ou seja, o obtenedor de fluxo contínuo de dados 110 pode obter as informações de tamanho do bloco de processamento do fluxo contínuo de dados de acordo com cada uma das várias unidades de dados, o aparelho de decodificação de imagem 100 pode determinar o tamanho de um ou mais blocos de processamento, que são divididos da imagem, usando as informações de tamanho de bloco de processamento obtidas e o tamanho dos blocos de processamento podem ser inteiros vezes o das unidades de codificação de referência.
[000182] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar o tamanho dos blocos de processamento 1602 e 1612 incluídos na imagem 1600. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar o tamanho dos blocos de processamento com base nas informações de tamanho do bloco de processamento obtidas a partir do fluxo contínuo de dados. Com referência à FIG. 16, de acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma largura dos blocos de processamento 1602 e 1612 como quatro vezes a largura das unidades de codificação de referência e pode determinar que a altura dos blocos de processamento 1602 e 1612 seja quatro vezes a altura das unidades de codificação de referência. O aparelho de decodificação de imagem 100 pode determinar uma ordem de determinação de uma ou mais unidades de codificação de referência em um ou mais blocos de processamento.
[000183] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar os blocos de processamento 1602 e 1612, que são incluídos na imagem 1600, com base no tamanho dos blocos de processamento, e pode determinar uma ordem de determinação de uma ou mais unidades de codificação de referência incluídas nos blocos de processamento 1602 e 1612. De acordo com uma modalidade, a determinação das unidades de codificação de referência pode incluir determinar o tamanho das unidades de codificação de referência.
[000184] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode obter, a partir do fluxo contínuo de dados, informações de ordem de determinação de uma ou mais unidades de codificação de referência incluídas em um ou mais blocos de processamento e pode determinar uma ordem de determinação em relação a uma ou mais unidades de codificação de referência com base nas informações obtidas da ordem de determinação. As informações da ordem de determinação podem ser definidas como uma ordem ou direção para determinar as unidades de codificação de referência no bloco de processamento. Ou seja, a ordem de determinação das unidades de codificação de referência pode ser determinada independentemente em relação a cada bloco de processamento.
[000185] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode obter, a partir do fluxo contínuo de dados, a informação da ordem de determinação das unidades de codificação de referência de acordo com cada unidade de dados específica. Por exemplo, o obtenedor de fluxo contínuo de dados 110 pode obter as informações da ordem de determinação das unidades de codificação de referência do fluxo contínuo de dados de acordo com cada unidade de dados, como imagem, sequência, imagem, fatia, segmento de fatia ou bloco de processamento. Como as informações da ordem de determinação das unidades de codificação de referência indicam uma ordem para determinar as unidades de codificação de referência em um bloco de processamento, as informações da ordem de determinação podem ser obtidas com relação a cada unidade de dados específica, incluindo um número inteiro de blocos de processamento.
[000186] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma ou mais unidades de codificação de referência com base na ordem de determinação determinada.
[000187] De acordo com uma modalidade, o obtenedor de fluxo contínuo de dados 110 pode obter a informação da ordem de determinação das unidades de codificação de referência do fluxo contínuo de dados como informações relacionadas aos blocos de processamento 1602 e 1612, e o aparelho de decodificação de imagem 100 pode determinar uma ordem de determinação de uma ou mais unidades de codificação de referência incluídas nos blocos de processamento
1602 e 1612 e determinam uma ou mais unidades de codificação de referência, incluídas na imagem 1600, com base na ordem de determinação. Com referência à FIG. 16, o aparelho de decodificação de imagem 100 pode determinar ordens de determinação 1604 e 1614 de uma ou mais unidades de codificação de referência nos blocos de processamento 1602 e 1612, respectivamente. Por exemplo, quando as informações da ordem de determinação das unidades de codificação de referência são obtidas em relação a cada bloco de processamento, diferentes tipos de informações da ordem de determinação das unidades de codificação de referência podem ser obtidos para os blocos de processamento 1602 e 1612. Quando a ordem de determinação 1604 das unidades de codificação de referência no bloco de processamento 1602 é uma ordem de digitalização por varredura, as unidades de codificação de referência incluídas no bloco de processamento 1602 podem ser determinadas de acordo com a ordem de digitalização por varredura. Pelo contrário, quando a ordem de determinação 1614 das unidades de codificação de referência no outro bloco de processamento 1612 é uma ordem de digitalização por varredura inversa, as unidades de codificação de referência incluídas no bloco de processamento 1612 podem ser determinadas de acordo com a ordem de digitalização por varredura reversa.
[000188] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode decodificar a uma ou mais unidades de codificação de referência determinadas. O aparelho de decodificação de imagem 100 pode decodificar uma imagem, com base nas unidades de codificação de referência determinadas como descrito acima. Um método de decodificação das unidades de codificação de referência pode incluir vários métodos de decodificação de imagem.
[000189] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode obter informações sobre a forma do bloco indicando a forma de uma unidade de codificação atual ou informações sobre o modo de forma de divisão indicando um método de divisão da unidade de codificação atual, a partir do fluxo contínuo de dados, e pode usar as informações obtidas. As informações de forma de bloco ou as informações do modo de forma de divisão podem ser incluídas no fluxo contínuo de dados relacionado a várias unidades de dados. Por exemplo, o aparelho de decodificação de imagem 100 pode usar as informações de forma de bloco ou as informações do modo de forma de divisão incluídas em um conjunto de parâmetros de sequência, um conjunto de parâmetros de imagem, um conjunto de parâmetros de vídeo, um cabeçalho de fatia ou um cabeçalho de segmento de fatia. Além disso, o aparelho de decodificação de imagem 100 pode obter, a partir do fluxo contínuo de dados, um elemento de sintaxe correspondente às informações da forma do bloco ou às informações do modo de forma de divisão de acordo com cada unidade de codificação maior, cada unidade de codificação de referência ou cada bloco de processamento, e pode usar o elemento de sintaxe obtido.
[000190] AFIG. 17 ilustra unidades de codificação determináveis por imagem quando uma combinação de formas nas quais uma unidade de codificação é divisível é diferente por imagem, de acordo com uma modalidade.
[000191] Com referência à FIG. 17, o aparelho de decodificação de imagem 100 pode determinar diferentemente, por imagem, uma combinação de formas nas quais uma unidade de codificação é divisível. Por exemplo, o aparelho de decodificação de imagem 100 pode decodificar uma imagem usando uma imagem 1700 divisível em 4 unidades de codificação, uma imagem 1710 divisível em 2 ou 4 unidades de codificação e uma imagem 1720 divisível em 2, 3, ou 4 unidades de codificação, entre uma ou mais imagens incluídas na imagem. A fim de dividir a imagem 1700 em uma pluralidade de unidades de codificação, o aparelho de decodificação de imagem 100 pode usar apenas informações de forma de divisão, indicando que a imagem 1700 é dividida em 4 unidades de codificação quadradas. Para dividir a imagem 1710, o aparelho de decodificação de imagem 100 pode usar apenas informações de forma de divisão, indicando que a imagem 1710 é dividida em 2 ou 4 unidades de codificação. Para dividir a imagem 1720, o aparelho de decodificação de imagem 100 pode usar apenas informações de forma de divisão, indicando que a imagem 1720 é dividido em 2, 3 ou 4 unidades de codificação. Como tal combinação de formas de divisão é meramente uma modalidade para descrever operações do aparelho de decodificação de imagem 100, a combinação de formas de divisão não deve ser interpretada como sendo limitada à modalidade e várias combinações de formas de divisão podem ser usadas de acordo com unidades de dados predeterminadas.
[000192] De acordo com uma modalidade, o obtenedor de fluxo contínuo de dados 110 do aparelho de decodificação de imagem 100 pode obter um fluxo contínuo de dados incluindo um índice indicando uma combinação de informações de forma de divisão de acordo com unidades de dados predeterminadas (por exemplo, sequências, figuras ou fatias). Por exemplo, o obtenedor de fluxo contínuo de dados 110 pode obter o índice indicando a combinação de informações de forma de divisão de um conjunto de parâmetros de sequência, um conjunto de parâmetros de imagem ou um cabeçalho de fatia. O aparelho de decodificação de imagem 100 pode determinar uma combinação de formas de divisão nas quais uma unidade de codificação é divisível de acordo com unidades de dados predeterminadas usando o índice obtido e, portanto, combinações diferentes de formas de divisão podem ser usadas de acordo com unidades de dados predeterminadas.
[000193] A FIG. 18 ilustra várias formas de uma unidade de codificação determinável com base em informações de forma de divisão representáveis como um código binário, de acordo com uma modalidade.
[000194] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação em várias formas usando informações de forma de bloco e informações de forma de divisão obtidas pelo obtenedor de fluxo contínuo de dados 110. As formas nas quais uma unidade de codificação é divisível podem corresponder a várias formas, incluindo as formas descritas com referência às modalidades anteriores.
[000195] Com referência à FIG. 18, o aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação quadrada em pelo menos uma de uma direção horizontal e uma direção vertical e pode dividir uma unidade de codificação não quadrada em uma direção horizontal ou uma direção vertical, com base nas informações de forma de divisão.
[000196] De acordo com uma modalidade, quando o aparelho de decodificação de imagem 100 é capaz de dividir uma unidade de codificação quadrada em uma direção horizontal e vertical, para obter 4 unidades de codificação quadradas, o número de formas de divisão que podem ser indicadas pelas informações de forma de divisão sobre a unidade de codificação quadrada pode ser 4. De acordo com uma modalidade, as informações de forma de divisão podem ser representadas como um código binário de 2 dígitos e um código binário pode ser alocado para cada forma de divisão. Por exemplo, quando uma unidade de codificação não é dividida, as informações de forma de divisão podem ser representadas como (00) b; quando uma unidade de codificação é dividida em uma direção horizontal e vertical, as informações de forma de divisão podem ser representadas como (01) b; quando uma unidade de codificação é dividida em uma direção horizontal, as informações de forma de divisão podem ser representadas como (10) b; e quando uma unidade de codificação é dividida em uma direção vertical, as informações de forma de divisão podem ser representadas como (11) Db.
[000197] De acordo com uma modalidade, quando o aparelho de decodificação de imagem 100 divide uma unidade de codificação não quadrada na direção horizontal ou vertical, os tipos de formas de divisão que podem ser indicados pelas informações de forma de divisão podem ser determinados de acordo com o número de unidades de codificação nas quais uma unidade de codificação é dividida. Com referência à FIG. 18, o aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação não quadrada em até 3 unidades de codificação de acordo com uma modalidade. O aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação em duas unidades de codificação e, neste caso, à informação da forma de divisão pode ser representada como (10) b. O aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação em três unidades de codificação e, neste caso, à informação da forma de divisão pode ser representada como (11) b. O aparelho de decodificação de imagem 100 pode determinar não dividir uma unidade de codificação e, neste caso, a informação da forma de divisão pode ser representada como (0) b. Ou seja, para usar um código binário indicando informações de forma de divisão, o aparelho de decodificação de imagem 100 pode usar codificação de comprimento variável (VLC), em vez de codificação de comprimento fixo (FLC).
[000198] De acordo com uma modalidade, referindo-se à FIG. 18, um código binário da informação do modo de forma de divisão indicando que uma unidade de codificação não está dividida pode ser representado como (0) b. Quando um código binário das informações do modo de forma de divisão, indicando que uma unidade de codificação não está dividida, é definido como (00) b, todos os códigos binários de 2 bits das informações do modo de forma de divisão devem ser utilizados, apesar de não haver informações sobre o modo de forma de divisão definidas para (01) b. No entanto, como mostrado na FIG. 18, quando 3 formas de divisão são usadas para uma unidade de codificação não quadrada, o aparelho de decodificação de imagem 100 pode determinar não dividir uma unidade de codificação mesmo usando um código binário de 1 bit (0) b como a informação do modo de forma de divisão, desse modo eficientemente usando um fluxo contínuo de dados. No entanto, as formas de divisão de uma unidade de codificação não quadrada, que são indicadas pelas informações de forma de divisão, não devem ser interpretadas como limitadas a três formas mostradas na FIG. l18 e devem ser interpretadas como sendo de várias formas, incluindo as modalidades anteriores.
[000199] A FIG. 19 ilustra outras formas de uma unidade de codificação determinável com base em informações de forma de divisão representáveis como um código binário, de acordo com uma modalidade.
[000200] Com referência à FIG. 19, o aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação quadrada em uma direção horizontal ou uma direção vertical e pode dividir uma unidade de codificação não quadrada em uma direção horizontal ou uma direção vertical, com base nas informações de forma de divisão. Ou seja, as informações de forma de divisão podem indicar que uma unidade de codificação quadrada é dividida em uma direção. Neste caso, um código binário da informação de forma de divisão indicando que uma unidade de codificação quadrada não está dividida pode ser representado como (0) b. Quando um código binário das informações de forma de divisão, indicando que uma unidade de codificação não está dividida, é definido como (00) b, todos os códigos binários de 2 bits das informações do modo de forma de divisão devem ser utilizados, apesar de não haver informações de forma de divisão definidas para (01) b. No entanto, como mostrado na FIG. 19, quando 3 formas de divisão são usadas para uma unidade de codificação quadrada, o aparelho de decodificação de imagem 100 pode determinar não dividir uma unidade de codificação mesmo usando um código binário de 1 bit (0) b como à informação do modo de forma de divisão, desse modo eficientemente usando um fluxo contínuo de dados. No entanto, as formas de divisão de uma unidade de codificação quadrada, que são indicadas pelas informações de forma de divisão, não devem ser interpretadas como limitadas a três formas mostradas na FIG. 19 e devem ser interpretadas como sendo de várias formas, incluindo as modalidades anteriores.
[000201] De acordo com uma modalidade, informações da forma de bloco ou informações de forma de divisão podem ser representadas usando um código binário e essas informações podem ser geradas imediatamente como um fluxo contínuo de dados. Como alternativa, informações da forma de bloco ou informações de forma de divisão representáveis como um código binário podem não ser imediatamente geradas como um fluxo contínuo de dados e podem ser usadas como uma entrada de código binário durante a codificação aritmética binária adaptativa ao contexto (CABAC) .
[000202] De acordo com uma modalidade, será descrito um processo, realizado pelo aparelho de decodificação de imagem 100, de obter sintaxe sobre informações de forma de bloco ou informações de forma de divisão através de CABAC. Um fluxo contínuo de dados incluindo um código binário para a sintaxe pode ser obtido pelo obtenedor de fluxo contínuo de dados 110. O aparelho de decodificação de imagem 100 pode detectar um elemento de sintaxe indicando as informações da forma de bloco ou as informações de forma de divisão desbinarizando uma string bin incluída no fluxo contínuo de dados obtido. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode obter um conjunto de strings bin binárias correspondentes ao elemento de sintaxe a ser decodificado e pode decodificar cada bin usando informações de probabilidade e o aparelho de decodificação de imagem 100 pode executar repetidamente este processo até uma string bin incluindo esses bins decodificados ser a mesma que uma das string bins pré-obtidas. O aparelho de decodificação de imagem 100 pode determinar o elemento de sintaxe desbinarizando a cadeia de caixas
[000203] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar a sintaxe em torno de uma string bin executando um processo de decodificação de codificação aritmética binária adaptativa e pode atualizar um modelo de probabilidade para bins obtidos pelo obtenedor de fluxo contínuo de dados 110. Com referência à FIG. 18, o obtenedor de fluxo contínuo de dados 110 do aparelho de decodificação de imagem 100 pode obter um fluxo contínuo de dados indicando um código binário indicando informações de forma de divisão de acordo com uma modalidade. O aparelho de decodificação de imagem 100 pode determinar a sintaxe sobre as informações de forma de divisão usando o código binário obtido com um tamanho de 1 ou 2 bits. A fim de determinar a sintaxe sobre as informações de forma de divisão, o aparelho de decodificação de imagem 100 pode atualizar uma probabilidade de cada bit entre os 2 bits do código binário. Ou seja, o aparelho de decodificação de imagem 100 pode atualizar uma probabilidade de que um próximo bin tenha um valor de O ou 1 durante a decodificação, de acordo com o valor de um primeiro bin nos 2 bits do código binário ser O ou 1.
[000204] De acordo com uma modalidade, ao determinar a sintaxe, O aparelho de decodificação de imagem 100 pode atualizar uma probabilidade dos bins usados em um processo de decodificação dos bins da string bin para a sintaxe e o aparelho de decodificação de imagem 100 pode determinar que um bit específico na string bin tem a mesma probabilidade sem atualizar a probabilidade.
[000205] Com referência à FIG. 18, enquanto determina a sintaxe usando uma string bin indicando informações de forma de divisão sobre uma unidade de codificação não quadrada, o aparelho de decodificação de imagem 100 pode determinar a sintaxe sobre as informações de forma de divisão usando um bin com um valor O quando a unidade de codificação quadrada não é dividida. Ou seja, quando as informações da forma do bloco indicam que uma unidade de codificação atual tem uma forma não quadrada, um primeiro bin de uma string bin para as informações da forma de divisão pode ser O quando a unidade de codificação não quadrada não para dividida e pode ser 1 quando a unidade de codificação não quadrada para dividida em duas ou três unidades de codificação. Por conseguinte, uma probabilidade de que o primeiro bin da string bin das informações de forma de divisão sobre a unidade de codificação não quadrada seja O pode ser 1/3 e uma probabilidade de que o primeiro bin da string bins das informações de forma de divisão sobre a unidade de codificação não quadrada seja 1 pode ser 2/3. Como descrito anteriormente, porque as informações de forma de divisão indicando que a unidade de codificação não quadrada não está dividida podem representar apenas uma string bin de 1 bit com um valor 0, o aparelho de decodificação de imagem 100 pode determinar a sintaxe sobre as informações de forma de divisão determinando se um segundo bin é O ou 1 somente quando o primeiro bin das informações de forma de divisão é 1. De acordo com uma modalidade, quando o primeiro bin para a informação de forma de divisão é 1, o aparelho de decodificação de imagem 100 pode decodificar um bin determinando as probabilidades de que o segundo bin seja 0 e 1 sejam os mesmos.
[000206] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode usar várias probabilidades para cada bin, enquanto determina um bin de uma string bin para informações de forma de divisão. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar diferentemente probabilidades de bins para informações de forma de divisão de acordo com uma direção de um bloco não quadrado. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar de maneira diferente as probabilidades dos bins para as informações de forma de divisão de acordo com uma área ou um comprimento de um lado longo de uma unidade de codificação atual. De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar diferentemente as probabilidades dos bins para as informações de forma de divisão de acordo com pelo menos uma de uma forma e o comprimento do lado longo da unidade de codificação atual.
[000207] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar que as probabilidades dos bins para as informações de forma de divisão são as mesmas em relação às unidades de codificação com um tamanho predeterminado ou mais. Por exemplo, o aparelho de decodificação de imagem 100 pode determinar que as probabilidades dos bins para as informações de forma de divisão são as mesmas em relação às unidades de codificação com um tamanho igual ou superior a 64 amostras com base em um comprimento de um lado longo de cada unidade de codificação.
[000208] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode determinar uma probabilidade inicial de bins que constituem uma string bin das informações de forma de divisão com base em um tipo de fatia (por exemplo, uma fatia I, uma fatia P, uma fatia B, ou semelhante).
[000209] A FIG. 20 é um diagrama de blocos de um sistema de codificação e decodificação de imagem 2000 para realizar a filtragem em loop.
[000210] Um final de codificação 2010 do sistema de codificação e decodificação de imagem 2000 transmite um fluxo contínuo de dados codificado de uma imagem, e um final de decodificação 2050 recebe e decodifica o fluxo contínuo de dados e gera uma imagem de reconstrução. A extremidade de codificação 2010 pode ter uma configuração semelhante à do aparelho de codificação de imagem 200 que será descrito abaixo e a extremidade de decodificação 2050 pode ter uma configuração semelhante à do aparelho de decodificação de imagem 100.
[000211] No final da codificação 2010, um codificador de predição 2015 gera uma imagem de referência por meio de inter predição e intra predição e um transformador e quantizador 2020 quantiza dados residuais entre a imagem de referência e uma imagem de entrada atual em um coeficiente de transformação quantizado e gera o coeficiente de transformação quantizado . Um codificador de entropia 2025 codifica e transforma o coeficiente de transformação quantizado em um fluxo contínuo de dados e gera o fluxo contínuo de dados. O coeficiente de transformação quantizado é reconstruído como dados em um domínio espacial por um desequalizador e conversor inverso 2030, e os dados reconstruídos no domínio espacial são emitidos como uma imagem de reconstrução através de um filtro de desbloqueio 2035 e um filtro de loop 2040. A imagem de reconstrução pode ser usada como uma imagem de referência de uma próxima imagem de entrada através do codificador de predição 2015.
[000212] Os dados de imagem codificados entre o fluxo contínuo de dados recebido pelo final da decodificação 2050 são reconstruídos como dados residuais em um domínio espacial através de um decodificador de entropia 2055 e um desequalizador e o conversor inverso 2060. Os dados de imagem em um domínio espacial são formados à medida que os dados residuais e uma saída de imagem de referência de um decodificador de predição 2075 são combinados, e um filtro de desbloqueio 2065 e um filtro de loop 2070 podem filtrar os dados de imagem no domínio espacial e podem gerar uma imagem de reconstrução para uma imagem original atual. A imagem de reconstrução pode ser usada como uma imagem de referência para uma próxima imagem original pelo decodificador de predição 2075.
[000213] O filtro de loop 2040 do final da codificação 2010 executa a filtragem de loop usando a entrada de informações de filtro de acordo com uma entrada do usuário ou uma configuração do sistema. As informações de filtro usadas pelo filtro de loop 2040 são enviadas para o codificador de entropia 2025 e são transmitidas juntamente com os dados de imagem codificados para o final da decodificação 2050. O filtro de loop 2070 do final da decodificação 2050 pode executar a filtragem de loop com base na entrada de informações de filtro do final de decodificação 2050.
[000214] AFIG. 21] é umdiagrama que ilustra um exemplo de unidades de filtragem incluídas em uma maior unidade de codificação e informações de desempenho de filtragem de uma unidade de filtragem, de acordo com uma modalidade.
[000215] Ao filtrar unidades do filtro de loop 2040 da extremidade de codificação 2010 e o filtro de loop 2070 da extremidade de decodificação 2050 incluem unidades de dados semelhantes às unidades de codificação de acordo com uma modalidade descrita com referência às FIGS. 3 a 5, as informações de filtro podem incluir informações de forma de bloco e informações de forma de divisão de uma unidade de dados para indicar uma unidade de filtragem e informações de desempenho de filtragem de loop indicando se a filtragem de loop é executada na unidade de filtragem.
[000216] As unidades de filtragem incluídas em uma maior unidade de codificação 2100 de acordo com uma modalidade podem ter a mesma forma de bloco e forma de divisão que as unidades de codificação incluídas na maior unidade de codificação 2100. Além disso, as unidades de filtragem incluídas na maior unidade de codificação 2100 de acordo com uma modalidade podem ser divididas com base nos tamanhos das unidades de codificação incluídas na maior unidade de codificação
2100. Com referência à FIG. 21, por exemplo, as unidades de filtragem podem incluir uma unidade de filtragem 2140 tendo uma forma quadrada e uma profundidade de D, unidades de filtragem 2132 e 2134 tendo uma forma não quadrada e uma profundidade de D, unidades de filtragem 2112, 2114, 2116, 2152, 2154 e 2164 com forma quadrada e profundidade de D +1, unidades de filtragem 2162 e 2166 com forma não quadrada e profundidade de D +1 e unidades de filtragem 2122, 2124, 2126 e 2128 com estrutura quadrada forma e uma profundidade de D +2.
[000217] As informações de forma de bloco, as informações de forma de divisão (profundidade) e as informações de desempenho de filtragem de loop das unidades de filtragem incluídas na maior unidade de codificação 2100 podem ser codificadas como mostrado na Tabela 1. [Tabela 1] Information es E) 1(2164) D+1
FO
EO [eee
[000218] Um processo para determinar uma pluralidade de unidades de codificação dividindo recursivamente uma unidade de codificação de acordo com informações de forma de bloco e informações de divisão de bloco de acordo com uma modalidade é o mesmo que o descrito com referência à FIG. 13. As informações de desempenho de filtragem de loop das unidades de filtragem de acordo com uma modalidade indicam que a filtragem de loop é realizada nas unidades de filtragem quando um valor de sinalização é 1 e indica que a filtragem de loop não é executada nas unidades de filtragem quando um valor de sinalização é O. Referindo-se à Tabela 1, as informações das unidades de dados para determinar as unidades de filtragem a serem filtradas pelos filtros de loop 2040 e 2070 podem todas ser codificadas e transmitidas como informações de filtro.
[000219] Como as unidades de codificação configuradas de acordo com uma modalidade são unidades de codificação configuradas para minimizar um erro com uma imagem original, espera-se que haja uma alta correlação espacial nas unidades de codificação. Por conseguinte, porque uma unidade de filtragem é determinada com base em uma unidade de codificação de acordo com uma modalidade, uma operação de determinação de uma unidade de filtragem, separada da determinação de uma unidade de codificação, pode ser omitida. Também, em conformidade, porque uma unidade de filtragem é determinada com base em uma unidade de codificação de acordo com uma modalidade e, portanto, as informações para determinar uma forma de divisão da unidade de filtragem podem ser omitidas, uma taxa de bits de transferência de informações de filtro pode ser salva.
[000220] Embora seja descrito nas modalidades anteriores que uma unidade de filtragem é determinada com base em uma unidade de codificação de acordo com uma modalidade, uma unidade de filtragem pode ser dividida com base em uma unidade de codificação até uma profundidade arbitrária e, portanto, uma forma da unidade de filtragem pode ser determinado até a profundidade arbitrária.
[000221] A determinação de uma unidade de filtragem descrita nas modalidades anteriores pode ser aplicada não apenas à filtragem de loop, mas também a várias modalidades, como filtragem de desbloqueio e filtragem de loop adaptativa.
[000222] De acordo com uma modalidade, o aparelho de decodificação de imagem 100 pode dividir uma unidade de codificação atual usando pelo menos uma das informações de forma de bloco e informações de forma de divisão e as informações de forma de bloco podem ser pré-determinadas para indicar o uso apenas de uma forma quadrada e a divisão as informações de forma podem ser pré-determinadas para indicar que a unidade de codificação atual não está dividida ou dividida em 4 unidades de codificação quadradas. Ou seja, as unidades de codificação da unidade de codificação atual podem sempre ter uma forma quadrada de acordo com as informações de forma do bloco e a unidade de codificação atual não pode ser dividida ou pode ser dividida em 4 unidades de codificação quadradas com base nas informações de forma de divisão. O aparelho de decodificação de imagem 100 pode obter, usando o obtenedor de fluxo contínuo de dados 110, um fluxo contínuo de dados gerado usando um método de codificação predeterminado que é predeterminado para usar apenas tais formas de bloco e formas de divisão e o aparelho de decodificação de imagem 100 pode usar apenas o formas de bloco predeterminadas e formas de divisão. Neste caso, porque o aparelho de decodificação de imagem 100 pode resolver um problema de compatibilidade com o método de codificação predeterminado usando um método de decodificação predeterminado semelhante ao método de codificação predeterminado. De acordo com uma modalidade, quando o aparelho de decodificação de imagem 100 usa o método de decodificação predeterminado usando apenas as formas de bloco predeterminadas e formas de divisão entre várias formas que podem ser indicadas pelas informações de forma de bloco e pelas informações de forma de divisão, as informações de forma de bloco indicam apenas uma forma quadrada e, portanto, o aparelho de decodificação de imagem 100 pode omitir um processo de obtenção das informações de forma de bloco do fluxo contínuo de dados. A sintaxe que indica se deve ser usado o método de decodificação predeterminado pode ser usada, e essa sintaxe pode ser obtida do fluxo contínuo de dados de acordo com as unidades de dados com várias formas que podem incluir uma pluralidade de unidades de codificação, como sequências, imagens, unidades de fatia e maiores unidades de codificação. Ou seja, o obtenedor de fluxo contínuo de dados 110 pode determinar se a sintaxe indicando a informação da forma do bloco deve ser obtida a partir do fluxo contínuo de dados com base na sintaxe indicando se o método de decodificação predeterminado é usado.
[000223] A FIG. 23 ilustra um índice de acordo com uma ordem de varredura Z de uma unidade de codificação, de acordo com uma modalidade.
[000224] O aparelho de decodificação de imagem 100 de acordo com uma modalidade pode varrer as unidades de dados inferiores incluídas em uma unidade de dados superior de acordo com uma ordem de varredura Z. Além disso, o aparelho de decodificação de imagem 100 de acordo com uma modalidade pode acessar sequencialmente os dados de acordo com um índice de varredura Z em uma unidade de codificação incluída em um bloco de processamento ou em uma maior unidade de codificação.
[000225] O aparelho de decodificação de imagem 100 de acordo com uma modalidade pode dividir uma unidade de codificação de referência em pelo menos uma unidade de codificação, como descrito com referência às FIGS. 3 e 4. Neste caso, as unidades de codificação com forma quadrada e as unidades de codificação com forma não quadrada podem coexistir na unidade de codificação de referência. O aparelho de decodificação de imagem 100 de acordo com uma modalidade pode acessar dados de acordo com um índice de varredura Z incluído em cada unidade de codificação na unidade de codificação de referência. Nesse caso, um método de aplicação de um índice de varredura Z pode variar de acordo com a existência de uma unidade de codificação com forma não quadrada na unidade de codificação de referência.
[000226] De acordo com uma modalidade, quando uma unidade de codificação com forma não quadrada não existe na unidade de codificação de referência, as unidades de codificação com uma profundidade mais baixa na unidade de codificação de referência podem ter índices de varredura Z contínuos. Por exemplo, de acordo com uma modalidade, uma unidade de codificação de uma profundidade superior pode incluir quatro unidades de codificação de uma profundidade inferior. Os limites das quatro unidades de codificação da profundidade mais baixa podem ser contínuos e as unidades de codificação da profundidade mais baixa podem ser varridas em uma ordem de varredura Z de acordo com índices que indicam a ordem de varredura Z. Os índices que indicam a ordem de varredura Z de acordo com uma modalidade podem ser configurados para números que aumentam de acordo com a ordem de varredura Z2 para as unidades de codificação. Nesse caso, as unidades de codificação mais profundas da mesma profundidade podem ser varridas de acordo com a ordem de varredura Z.
[000227] De acordo com uma modalidade, quando pelo menos uma unidade de codificação tendo uma forma não quadrada existe na unidade de codificação de referência, o aparelho de decodificação de imagem 100 pode dividir cada uma das unidades de codificação na unidade de codificação de referência em sub-blocos e pode varrer os sub-blocos divididos de acordo com a ordem de varredura Z. Por exemplo, quando uma unidade de codificação com uma forma não quadrada na direção vertical ou horizontal existe na unidade de codificação de referência, a varredura Z pode ser executada usando sub-blocos divididos. Além disso, por exemplo, quando a unidade de codificação de referência é dividida em um número ímpar de unidades de codificação, a varredura Z pode ser realizada usando sub-blocos. Um sub-bloco é uma unidade de codificação que não é mais dividida ou uma unidade de codificação obtida pela divisão de uma unidade de codificação arbitrária e pode ter uma forma quadrada. Por exemplo, quatro sub-blocos com forma quadrada podem ser divididos a partir de uma unidade de codificação com forma quadrada. Além disso, por exemplo, dois sub-blocos com uma forma quadrada podem ser divididos a partir de uma unidade de codificação com uma forma não quadrada.
[000228] Com referência à FIG. 23, por exemplo, o aparelho de decodificação de imagem 100 de acordo com uma modalidade pode varrer as unidades de codificação 2302, 2304, 2306, 2308 e 2310 de uma profundidade mais baixa em uma unidade de codificação 2300 de acordo com uma ordem de varredura Z. A unidade de codificação 2300 e as unidades de codificação 2302, 2304, 2306, 2308 e 2310 são respectivamente uma unidade de codificação superior e unidades de codificação inferiores. A unidade de codificação 2300 inclui as unidades de codificação 2306 e 2310 que têm uma forma não quadrada na direção horizontal. As unidades de codificação 2306 e 2310 que têm uma forma não quadrada têm limites descontínuos com as unidades de codificação 2302 e 2304 que são adjacentes umas às outras e têm uma forma quadrada. Além disso, a unidade de codificação 2308 tem uma forma quadrada e é uma unidade de codificação no centro quando uma unidade de codificação com uma forma não quadrada é dividida em um número ímpar de unidades de codificação. Como as unidades de codificação 2306 e 2310 tendo uma forma não quadrada, a unidade de codificação 2308 possui limites descontínuos com as unidades de codificação 2302 e 2304 que são adjacentes umas às outras e têm uma forma quadrada. Quando a unidade de codificação 2300 inclui as unidades de codificação 2306 e 2310 com uma forma não quadrada ou a unidade de codificação 2308 localizada no centro quando uma unidade de codificação com uma forma não quadrada é dividida em um número ímpar de unidades de codificação, porque os limites adjacentes entre as unidades de codificação são descontínuas, os índices de varredura Z contínuos podem não estar definidos. Por conseguinte, o aparelho de decodificação de imagem 100 pode definir continuamente os índices de varredura Z dividindo unidades de codificação em sub-blocos. Além disso, o aparelho de decodificação de imagem 100 pode executar varredura Z contínua nas unidades de codificação 2306 e 2310 com uma forma não quadrada ou na unidade de codificação 2308 localizada no centro de um número ímpar de unidades de codificação com uma forma não quadrada.
[000229] Uma unidade de codificação 2320 da FIG. 23 é obtida dividindo as unidades de codificação 2302, 2304, 2306, 2308 e 2310 na unidade de codificação 2300 em sub-blocos. Como um índice de varredura Z pode ser definido para cada um dos sub-blocos e os limites adjacentes entre os sub-blocos são contínuos, os sub-blocos podem ser varridos de acordo com uma ordem de varredura Z. Por exemplo, em um aparelho de decodificação de acordo com uma modalidade, a unidade de codificação 2308 pode ser dividida em sub-blocos 2322, 2324, 2326 e 2328. Neste caso, os sub-blocos 2322 e 2324 podem ser varridos após o processamento de dados ser realizado em um sub-bloco 2330 e os sub-blocos 2326 e 2328 podem ser varridos após o processamento de dados em um sub-bloco 2332. Além disso, os sub-blocos podem ser varridos de acordo com a ordem de varredura Z.
[000230] Nas modalidades anteriores, as unidades de dados são varridas de acordo com uma ordem de varredura Z para armazenamento, carregamento e acesso a dados.
[000231] Além disso, nas modalidades anteriores, embora as unidades de dados possam ser varridas de acordo com uma ordem de varredura Z, uma ordem de varredura de unidades de dados pode ser uma de várias ordens, como uma ordem de varredura raster, uma ordem de varredura N, uma parte superior direita ordem de varredura diagonal, horizontal e vertical e não deve se limitar à ordem de varredura Z.
[000232] Além disso, nas modalidades anteriores, embora as unidades de codificação em uma unidade de codificação de referência sejam varridas, a presente divulgação não é limitada a ela e um alvo a ser varrido pode ser um bloco arbitrário em um bloco de processamento ou uma unidade de codificação maior.
[000233] Além disso, nas modalidades anteriores, embora um bloco seja dividido em sub-blocos e a varredura seja realizada de acordo com uma ordem de varredura Z apenas quando pelo menos um bloco com uma forma não quadrada existe, um bloco pode ser dividido em sub-blocos e a varredura pode ser realizada de acordo com uma ordem de varredura Z, mesmo quando um bloco com uma forma não quadrada não existe para uma modalidade simplificada.
[000234] O aparelho de decodificação de imagem 100 de acordo com uma modalidade pode gerar dados de predição executando inter predição ou intra predição em uma unidade de codificação, pode gerar dados residuais executando transformação inversa em uma unidade de transformação incluída em uma unidade de codificação atual e pode reconstruir a codificação atual usando os dados de predição gerados e os dados residuais.
[000235] Um modo de predição de uma unidade de codificação de acordo com uma modalidade pode ser pelo menos um entre um modo intra, um modo inter e um modo de salto. De acordo com uma modalidade, um modo de predição pode ser selecionado independentemente de acordo com as unidades de codificação.
[000236] Quando uma unidade de codificação com a forma 2Nx2N é dividida em duas unidades de codificação com a forma 2NxN ou Nx2N de acordo com uma modalidade, a predição inter modos e predição intra modos pode ser realizada separadamente em cada unidade de codificação. Além disso, um modo de salto pode ser aplicado às unidades de codificação que têm a forma 2NxN ou Nx2N de acordo com uma modalidade.
[000237] O aparelho de decodificação de imagem 100 de acordo com uma modalidade pode permitir a realização de bi-predição em um modo de salto de uma unidade de codificação tendo uma forma 8x4 ou 4x8. Como apenas as informações do modo de salto sobre uma unidade de codificação são recebidas no modo de salto, o uso de dados residuais para a unidade de codificação é omitido. Por conseguinte, neste caso, uma sobrecarga de desquantização e transformação inversa pode ser reduzida. Em vez disso, o aparelho de decodificação de imagem 100 de acordo com uma modalidade pode permitir a realização de bi-predição em uma unidade de codificação à qual um modo de salto é aplicado, melhorando assim a eficiência da decodificação. Além disso, o aparelho de decodificação de imagem 100 de acordo com uma modalidade pode definir um número de derivação de interpolação para um valor relativamente pequeno durante a compensação de movimento, permitindo a realização de bi-predição em uma unidade de codificação com uma forma 8x4 ou 4x8, desse modo utilizando eficientemente uma largura de banda de memória. Por exemplo, um filtro de interpolação com um número de derivação menor que 8 (por exemplo, um filtro de interpolação de 2 derivações), em vez de um filtro de interpolação de 8 derivações, pode ser usado.
[000238] Além disso, o aparelho de decodificação de imagem 100 de acordo com uma modalidade pode sinalizar informações intra ou inter predições sobre cada região incluída em uma unidade de codificação atual dividindo a região em uma forma predefinida (por exemplo, divisão com base na diagonal).
[000239] O aparelho de decodificação de imagem 100 de acordo com uma modalidade pode obter uma amostra de predição de uma unidade de codificação atual usando um modo intra usando amostras adjacentes da unidade de codificação atual. Nesse caso, a predição intra é realizada usando amostras adjacentes que são pré-reconstruídas e as amostras são referidas como amostras de referência.
[000240] AFIG. 24é um diagrama de uma amostra de referência para predição intra de uma unidade de codificação, de acordo com uma modalidade. Com referência à FIG. 24, para uma unidade de codificação 2400 em que uma forma de bloco é uma forma não quadrada, um comprimento na direção horizontal é w e um comprimento no comprimento vertical é h, amostras de referência superior w + h 2402, amostras de referência esquerda w + h 2404 e uma amostra de referência superior esquerda 2406 são necessárias, ou seja, é necessário o número total de 2 (w+h) +1 amostras de referência. Para preparar uma amostra de referência, o preenchimento pode ser realizado em uma parte onde a amostra de referência não existe e um processo de filtragem de amostra de referência pode ser realizado para cada modo de predição para reduzir um erro de quantização incluído em uma amostra de referência reconstruída.
[000241] Embora onúmero de amostras de referência quando uma forma de bloco de uma unidade de codificação atual seja uma forma não quadrada tenha sido descrito nas modalidades anteriores, o número de amostras de referência é igualmente aplicado mesmo quando uma unidade de codificação atual é uma forma de bloco retangular.
[000242] As várias modalidades anteriores são para descrever uma operação relacionada a um método de decodificação de imagem realizado pelo aparelho de decodificação de imagem 100. Uma operação do aparelho de codificação de imagem 200 para executar um método de codificação de imagem correspondente a um processo de ordem inversa do método de decodificação de imagem será descrita por meio de várias modalidades.
[000243] AFIG.2éumdiagrama de blocos do aparelho de codificação de imagem 200 capaz de codificar uma imagem com base em pelo menos uma das informações de forma de bloco e informações de forma de divisão, de acordo com uma modalidade.
[000244] O aparelho de codificação de imagem 200 pode incluir um codificador 220 e um gerador de fluxo contínuo de dados 210. O codificador 220 pode receber uma imagem de entrada e pode codificar a imagem de entrada. O codificador 220 pode codificar a imagem de entrada e pode obter pelo menos um elemento de sintaxe. O elemento de sintaxe pode incluir pelo menos um de sinalizador de salto, modo de predição, diferença de vetor de movimento, método (ou índice) de predição de vetor de movimento (ou índice), coeficiente quantificado de transformação, padrão de bloco codificado, sinalizador de bloco codificado, modo de predição intra, sinalizador direto, sinalizador de fusão, delta QP, índice de referência, direção de predição e índice de transformação. O codificador 220 pode determinar um modelo de contexto com base em informações da forma de bloco, incluindo pelo menos uma de forma, uma direção, uma razão entre uma largura e uma altura e um tamanho de uma unidade de codificação.
[000245] O gerador de fluxo contínuo de dados 210 pode gerar um fluxo contínuo de dados com base na imagem de entrada codificada. Por exemplo, o gerador de fluxo contínuo de dados 210 pode gerar o fluxo contínuo de dados por entropia codificando o elemento de sintaxe com base no modelo de contexto. Além disso, o aparelho de codificação de imagem 200 pode transmitir o fluxo contínuo de dados para o aparelho de decodificação de imagem 100.
[000246] De acordo com uma modalidade, o codificador 220 do aparelho de codificação de imagem 200 pode determinar uma forma de uma unidade de codificação. Por exemplo, a unidade de codificação pode ter uma forma quadrada ou não quadrada, e as informações indicando a forma podem ser incluídas nas informações da forma do bloco.
[000247] De acordo com uma modalidade, o codificador 220 pode determinar em qual forma a unidade de codificação deve ser dividida. O codificador 220 pode determinar uma forma de pelo menos uma unidade de codificação incluída na unidade de codificação e o gerador de fluxo contínuo de dados 210 pode gerar o fluxo contínuo de dados incluindo informações de forma de divisão, incluindo as informações sobre a forma da unidade de codificação.
[000248] De acordo com uma modalidade, o codificador 220 pode determinar se a unidade de codificação é dividida ou não. Quando o codificador 220 determina que apenas uma unidade de codificação está incluída na unidade de codificação ou a unidade de codificação não está dividida, o gerador de fluxo contínuo de dados 210 pode gerar o fluxo contínuo de dados incluindo as informações de forma de divisão, indicando que a unidade de codificação não está dividida. Além disso, o codificador 220 pode dividir a unidade de codificação em uma pluralidade de unidades de codificação e o gerador de fluxo contínuo de dados 210 pode gerar o fluxo contínuo de dados incluindo as informações de forma de divisão, indicando que a unidade de codificação é dividida na pluralidade de unidades de codificação.
[000249] De acordo com uma modalidade, informações indicando o número de unidades de codificação nas quais a unidade de codificação deve ser dividida ou uma direção na qual a unidade de codificação deve ser dividida pode ser incluída nas informações de forma de divisão. Por exemplo, as informações de forma de divisão podem indicar que a unidade de codificação está dividida em pelo menos uma direção vertical e horizontal ou não está dividida.
[000250] O aparelho de codificação de imagem 200 determina informações do modo de forma de divisão com base em um modo de forma de divisão da unidade de codificação. O aparelho de codificação de imagem 200 determina o modelo de contexto com base em pelo menos uma das formas, a direção, a razão entre a largura e a altura e o tamanho da unidade de codificação. O aparelho de codificação de imagem 200 gera as informações do modo de forma de divisão para dividir a unidade de codificação com base no modelo de contexto como fluxo contínuo de dados.
[000251] A fim de determinar o modelo de contexto, o aparelho de codificação de imagem 200 pode obter um arranjo para corresponder pelo menos uma das formas, a direção, a razão entre a largura e a altura e o tamanho da unidade de codificação para um índice para o modelo de contexto. O aparelho de codificação de imagem 200 pode obter o índice para o modelo de contexto com base em pelo menos uma das formas, a direção, a razão entre a largura e a altura e o tamanho da unidade de codificação no arranjo. O aparelho de codificação de imagem 200 pode determinar o modelo de contexto com base no índice para o modelo de contexto.
[000252] A fim de determinar o modelo de contexto, o aparelho de codificação de imagem 200 pode determinar ainda mais o modelo de contexto com base em informações da forma de bloco, incluindo pelo menos uma de uma forma, uma direção, uma razão entre uma largura e uma altura e um tamanho de uma unidade de codificação vizinha adjacente à unidade de codificação. Além disso, a unidade de codificação vizinha pode incluir pelo menos uma de unidades de codificação localizadas no lado inferior esquerdo, no lado esquerdo, no lado superior esquerdo, no lado superior, no lado superior direito, no lado direito ou no lado inferior direito da unidade de codificação.
[000253] Além disso, para determinar o modelo de contexto, o aparelho de codificação de imagem 200 pode comparar um comprimento de uma largura de uma unidade de codificação vizinha superior com um comprimento da largura da unidade de codificação. Além disso, o aparelho de codificação de imagem 200 pode comparar um comprimento de uma altura de unidades de codificação vizinhas esquerda e direita com um comprimento de altura da unidade de codificação. Além disso, o aparelho de codificação de imagem 200 pode determinar o modelo de contexto com base nos resultados de comparação.
[000254] Uma operação do aparelho de codificação de imagem 200 é semelhante a uma operação do aparelho de decodificação de imagem 100 descrito com referência às FIGS. 3 a 24 e, portanto, descrições detalhadas dos mesmos não são fornecidas aqui.
[000255] Um aparelho 2500 e método de decodificação de informação de movimento e um aparelho 2700 e método de codificação de informação de movimento de acordo com uma modalidade são descritos com referência às FIGS. 25 a 38.
[000256] Com referência à FIG. 25, o aparelho de decodificação de informação de movimento 2500 de acordo com uma modalidade pode incluir um obtenedor de fluxo contínuo de dados 2510, um identificador 2530 e um decodificador 2550.
[000257] O aparelho de decodificação de informação de movimento 2500 pode ser incluído no aparelho de decodificação de imagem 100. Por exemplo, o obtenedor de fluxo contínuo de dados 2510 pode ser incluído no obtenedor de fluxo contínuo de dados 110 do aparelho de decodificação de imagem 100 da FIG. 1, e o identificador 2530 e o decodificador 2550 podem ser incluídos no decodificador 120 do aparelho de decodificação de imagem 100.
[000258] O aparelho de decodificação de informação de movimento 2500 pode obter informações de movimento para decodificar um bloco que é codificado por meio de predição. Um tipo de bloco pode ser quadrado ou retangular, ou uma forma geométrica arbitrária. O bloco de acordo com uma modalidade não está limitado a uma unidade de dados com um tamanho predeterminado e pode incluir uma maior unidade de codificação, uma unidade de codificação, uma unidade de predição e uma unidade de transformação entre as unidades de codificação de acordo com uma estrutura em árvore.
[000259] A predição inter na codificação e decodificação de imagens refere-se a um método de predição usando uma semelhança entre uma imagem atual e outra imagem. Um bloco de referência semelhante a um bloco atual da imagem atual é detectado a partir de uma imagem de referência que é decodificada antes da imagem atual e uma distância entre o bloco atual e um bloco de predição determinado a partir do bloco de referência é representada usando um vetor de movimento. Além disso, uma diferença de valores de pixel entre o bloco atual e o bloco de predição pode ser representada como dados residuais. As informações de imagem do bloco atual podem não ser enviadas diretamente, mas, em vez disso, um índice indicando a imagem de referência, um vetor de movimento e dados residuais pode ser enviado, melhorando assim a eficiência da codificação e decodificação.
[000260] A FIG. 29é um diagrama para descrever uma pluralidade de partes de informações de movimento usadas para decodificar um bloco que é predito unidirecionalmente. Com referência à FIG. 29, uma imagem de referência referenciada por um bloco atual é especificada, de acordo com a informação Ref idx indicando a imagem de referência. Além disso, um candidato de predição usado como vetor de movimento de predição do bloco atual é determinado entre os candidatos de predição de acordo com a informação MVP idx indicando o vetor de movimento de predição. O candidato a predição pode ser um bloco espacial ou temporalmente relacionado ao bloco atual ou um vetor de movimento do bloco espacial ou temporalmente relacionado ao bloco atual. O vetor de movimento de predição do bloco atual pode ser determinado de acordo com as informações que indicam o vetor de movimento de predição e um vetor de movimento (MV) do bloco atual pode ser determinado pela combinação do vetor de movimento de predição com uma diferença de vetor de movimento (MVD).
[000261] Quando um bloco de referência na imagem de referência é especificado pelo vetor de movimento do bloco atual, o bloco atual pode ser decodificado combinando o bloco de referência especificado (ou um bloco de predição determinado a partir do bloco de referência) com dados residuais.
[000262] Com referência à FIG. 29, para decodificar o bloco que é predito unidirecionalmente, a informação Ref idx indicando a imagem de referência, a informação MVP idx indicando o vetor de movimento de predição e a diferença de vetor de movimento MVD pode ser usada como informação de movimento.
[000263] A FIG. 30 é um diagrama para descrever uma pluralidade de partes de informações de movimento usadas para decodificar um bloco que é predito bidirecionalmente. Com referência à FIG. 30,
para uma lista O que inclui pelo menos uma imagem de referência, a informação Ref idx0O indicando uma imagem de referência, a informação MVP idx0 indicando um vetor de movimento de predição e uma diferença de vetor de movimento MVDO pode ser usada para determinar um bloco de referência na imagem de referência incluída na lista O.
[000264] Além disso, para uma lista 1 que inclui pelo menos uma imagem de referência, as informações Ref idxl indicando uma imagem de referência, as informações MVP idxl indicando um vetor de movimento de predição e uma diferença de vetor de movimento MVD1 podem ser usadas para determinar um bloco de referência na imagem de referência incluída na lista 1.
[000265] Um bloco de predição pode ser gerado combinando o bloco de referência correspondente à lista O com o bloco de referência correspondente à lista 1 e um bloco atual pode ser decodificado combinando o bloco de predição com dados residuais.
[000266] Com referência à FIG. 30, para decodificar um bloco que é bidirecionalmente predito, a informação Ref idx0O indicando a imagem de referência, a informação MVP idx0O indicando o vetor de movimento de predição e a diferença do vetor de movimento MVDO relacionada à lista O e a informação Ref idxl indicando a imagem de referência, as informações MVP idxl indicando o vetor de movimento de predição e a diferença do vetor de movimento MVD1 relacionada à lista 1 podem ser usadas como informações de movimento.
[000267] Em um codec como HEVC, um codificador transmite todas as informações de movimento para decodificar um bloco predito para um decodificador e o decodificador decodifica o bloco predito com base nas informações recebidas. No entanto, como a quantidade de informação de movimento a ser transmitida ao decodificador aumenta muito à medida que a resolução de uma imagem aumenta, ela pode ser ineficiente em termos de taxa de bits.
[000268] Napresente divulgação, porque um codificador pode omitir algumas ou todas as informações de movimento usadas para decodificar um bloco em vez de transmitir todas as informações de movimento para um decodificador e o decodificador pode obter diretamente as informações de movimento omitidas, uma taxa de bits pode ser reduzida.
[000269] Com referência à FIG. 25, o obtenedor de fluxo contínuo de dados 2510 obtém um fluxo contínuo de dados incluindo informações para decodificar uma imagem.
[000270] Emumamodalidade, algumas informações de movimento entre uma pluralidade de informações de partes de movimento usadas para decodificar um bloco atual podem ser incluídas no fluxo contínuo de dados e as informações de movimento restantes podem não ser incluídas no fluxo contínuo de dados.
[000271] Além disso, em uma modalidade, toda a pluralidade de informações de partes de movimento usadas para decodificar o bloco atual pode não ser incluída no fluxo contínuo de dados.
[000272] Na presente divulgação, informações de movimento não incluídas no fluxo contínuo de dados entre a pluralidade de informações de partes de movimento usadas para decodificar o bloco atual são referidas como informações de movimento de omissão.
[000273] As informações de movimento usadas para decodificar o bloco atual podem incluir informações indicando uma imagem de referência (daqui em diante, denominada informação de imagem de referência), informações indicando um vetor de movimento de predição (daqui em diante, referido como informações de vetor de movimento de predição) e um movimento diferença de vetor. Em uma modalidade, quando um vetor de movimento do bloco atual é determinado de acordo com um MVR selecionado entre vários MVRs, as informações sobre um MVR do bloco atual (daqui em diante, referidas como informações MVR) podem ser incluídas ainda mais nas informações de movimento usadas para decodificar o bloco atual.
[000274] Quando o bloco atual é predito unidirecionalmente, o número de partes da informação MVR do bloco atual pode ser 1. Por exemplo, as informações de MVR do bloco atual podem incluir um índice MVR idx indicando um dos vários MVRs. Além disso, quando o bloco atual é predito bidirecionalmente, o número de informações da MVR pode ser 1 ou 2. Por exemplo, as informações de MVR do bloco atual podem incluir o índice MVR idx, indicando um dos vários MVRs ou índices MVR idx0 e MVR idxl, indicando dois entre os vários MVRs. Um vetor de movimento MVO correspondente à lista O pode ser derivado de acordo com um MVR indicado pelo índice MVR idx0 e um vetor de movimento MVl1 correspondente à lista 1 pode ser derivado de acordo com um MVR indicado pelo índice MVR idxl.
[000275] O identificador 2530 identifica um tipo de informação de movimento de omissão não incluída no fluxo contínuo de dados entre a pluralidade de informações de partes de movimento usadas para decodificar o bloco atual.
[000276] Em uma modalidade, o identificador 2530 pode obter algumas informações de movimento entre a pluralidade de informações de partes de movimento do fluxo contínuo de dados e pode identificar informações de movimento não obtidas do fluxo contínuo de dados entre a pluralidade de informações de partes de movimento como a informação de movimento de omissão.
[000277] Em uma modalidade, quando nenhuma informação é obtida a partir do fluxo contínuo de dados, o identificador 2530 pode identificar toda a pluralidade de informações de partes de movimento como a informação de movimento de omissão.
[000278] Em uma modalidade, o identificador 2530 pode determinar se um processo de omissão de informação de movimento é aplicado ao bloco atual e, quando o processo de omissão de informação de movimento é aplicado ao bloco atual, o identificador 2530 pode determinar que existe a informação de movimento de omissão. Em uma modalidade, quando é determinado que o processo de omissão de informação de movimento é aplicado, o identificador 2530 pode determinar que pelo menos alguns dos tipos predefinidos de informação de movimento não estão incluídos no fluxo contínuo de dados. Em outras palavras, quando é determinado que o processo de omissão de informação de movimento é aplicado, o identificador 2530 pode determinar que pelo menos alguns dos tipos predefinidos de informação de movimento devem ser obtidos de acordo com um método predeterminado.
[000279] Emumamodalidade, se o processo de omissão de informações de movimento é aplicado ao bloco atual pode ser determinado com base em pelo menos um de um MVR do bloco atual, uma direção de predição do bloco atual, informações sobre o bloco atual, informações sobre um bloco vizinho anteriormente decodificado e um sinalizador indicando se o processo de omissão de informações de movimento é aplicado.
[000280] Quando o pelo menos um dos MVR do bloco atual, a direção de predição do bloco atual, as informações sobre o bloco atual e as informações sobre o bloco vizinho decodificado anteriormente são usadas, o decodificador 2550 pode determinar se o processo de omissão de informações de movimento é aplicado ao bloco atual com base no mesmo critério que o aparelho de codificação de informação de movimento 2700.
[000281] Por exemplo, quando o MVR do bloco atual corresponde a um MVR predeterminado (por exemplo, uma resolução de unidade de
1/4 de pixel), o identificador 2530 pode determinar que o processo de omissão de informações de movimento é aplicado ao bloco atual.
[000282] Por exemplo, quando o bloco atual é predito bidirecionalmente, o identificador 2530 pode determinar que o processo de omissão de informações de movimento é aplicado ao bloco atual.
[000283] Além disso, por exemplo, o identificador 2530 pode determinar se o processo de omissão de informações de movimento é aplicado com base nas informações sobre o bloco atual. O identificador 2530 pode determinar se o processo de omissão de informações de movimento é aplicado comparando um tamanho do bloco atual com um tamanho predefinido. Em detalhes, quando um tamanho horizontal ou tamanho vertical do bloco atual é igual ou maior que o tamanho predefinido, o identificador 2530 pode determinar que o processo de omissão de informações de movimento seja aplicado ao bloco atual.
[000284] Por exemplo, o identificador 2530 pode determinar se o processo de omissão de informações de movimento é aplicado, com base em informações sobre um tamanho, um MVR, um modo de predição ou uma direção de predição do bloco vizinho decodificado anteriormente.
[000285] Além disso, por exemplo, o identificador 2530 pode determinar se o processo de omissão de informações de movimento é aplicado ao bloco atual de acordo com um sinalizador indicando se o processo de omissão de informações de movimento é aplicado, o qual é obtido a partir do fluxo contínuo de dados. Por exemplo, quando o sinalizador corresponde a 1, o identificador 2530 pode determinar que o processo de omissão de informações de movimento é aplicado ao bloco atual.
[000286] Em uma modalidade, o identificador 2530 pode determinar um modo de omissão de informação de movimento e pode identificar qual informação de movimento é a informação de movimento de omissão com base no modo de omissão determinado.
[000287] O modo de omissão da informação de movimento pode ser determinado com base em pelo menos um dos MVR do bloco atual, a direção de predição do bloco atual, as informações sobre o bloco atual, as informações sobre o bloco vizinho decodificado anteriormente e um índice (ou um sinalizador) indicando o modo de omissão.
[000288] Em uma modalidade, quando o pelo menos um dos MVR do bloco atual, a direção de predição do bloco atual, as informações sobre o bloco atual e as informações sobre o bloco vizinho decodificado anteriormente são usadas, o decodificador 2550 pode determinar com base no mesmo critério que o aparelho de codificação de informação de movimento 2700.
[000289] Pelomenos um número e um tipo de informação de movimento de omissão pode ser determinado para cada modo de omissão das informações de movimento. Por exemplo, pelo menos um dos números e um tipo de informação de movimento de omissão em um primeiro modo de omissão e pelo menos um dos números e um tipo de informação de movimento de omissão em um segundo modo de omissão podem ser determinados independentemente. Em uma modalidade, pelo menos um número e um tipo de informação de movimento de omissão podem variar de acordo com cada modo de informação por movimento de omissão.
[000290] As FIGS. 31 e 32 são diagramas que ilustram informações de movimento de omissão correspondentes a um modo de omissão de informações de movimento.
[000291] Com referência à FIG. 31, a informação de movimento de omissão pode ser a informação de imagem de referência Ref idx e a informação de vetor de movimento de predição MVP idx em um modo l ea informação de movimento de omissão pode ser a informação de imagem de referência Ref idx em um modo 2. Além disso, a informação de movimento de omissão pode ser a informação de imagem de referência Ref idx, a informação de vetor de movimento de predição MVP idx e a diferença de vetor de movimento MVD em um modo 3.
[000292] Com referência à FIG. 32, pode não haver informação de movimento de omissão no modo 1, a informação de movimento de omissão pode ser a diferença do vetor de movimento MVDO correspondente à lista O no modo 2 e a informação de movimento de omissão pode ser a diferença do vetor de movimento MVD1l correspondente à lista 1 no modo 3.
[000293] Pelo menos um de um tipo e o número de informações de movimento de omissão correspondentes a um modo de omissão de informações de movimento podem ser determinados individualmente quando um bloco atual é predito unidirecionalmente e quando o bloco atual é predito bidirecionalmente. Por exemplo, quando o bloco atual é predito unidirecionalmente, as informações de movimento de omissão correspondentes ao modo 1 podem ser informações de imagem de referência e quando o bloco atual é predito bidirecionalmente, as informações de movimento de omissão correspondentes ao modo 1 podem ser informações de imagens de referência correspondentes à lista 0 e uma diferença de vetor de movimento correspondente à lista
0. Em outras palavras, o identificador 2530 pode determinar uma direção de predição do bloco atual e o modo de omissão de informações de movimento e pode identificar um tipo de informação de movimento de omissão com base no modo de direção de predição determinado e modo de omissão de informações de movimento.
[000294] O número de modos e o número e um tipo de informação de movimento de omissão correspondente a cada modo nas FIGS. 31 e 323 são meramente exemplos e o número de modos e o número e um tipo de informação de movimento de omissão correspondente a cada modo podem ser modificados de várias maneiras, sem se afastar do escopo da presente divulgação.
[000295] Como descrito anteriormente, o identificador 2530 pode determinar um modo de omissão de informação de movimento e pode identificar um tipo de informação de movimento de omissão com base no modo de omissão determinado.
[000296] Por exemplo, o identificador 2530 pode determinar o modo de omissão da informação de movimento com base em um MVR do bloco atual. Por exemplo, quando o MVR do bloco atual é uma resolução de unidade de 1/4 de pixel, o identificador 2530 pode determinar um primeiro modo como o modo de omissão e, quando o MVR do bloco atual é uma resolução de unidade de 1/2 pixel, o identificador 2530 pode determinar um segundo modo como o modo de omissão.
[000297] Além disso, por exemplo, o identificador 2530 pode determinar o modo de omissão de acordo com se o bloco atual é predito com referência a uma imagem de referência na lista O (isto é, predição unidirecional), o bloco atual é predito com referência a uma imagem de referência em a lista 1 (isto é, predição unidirecional) ou o bloco atual é predito com referência à imagem de referência na lista 0 e a imagem de referência na lista 1 (isto é, predição bidirecional). Por exemplo, quando o bloco atual se refere à imagem de referência na lista O, o identificador 2530 pode determinar o primeiro modo como o modo de omissão; quando o bloco atual se refere à imagem de referência na lista 1, o identificador 2530 pode determinar o segundo modo como o modo de omissão; e quando o bloco atual se refere à imagem de referência na lista 0 e à imagem de referência na lista 1, o identificador 2530 pode determinar um terceiro modo como o modo de omissão.
[000298] Além disso, por exemplo, o identificador 2530 pode determinar o modo de omissão da informação de movimento com base na informação sobre o bloco atual. Por exemplo, o identificador 2530 pode determinar o modo de omissão da informação de movimento comparando um tamanho do bloco atual com um tamanho predefinido. Em detalhes, quando um tamanho horizontal ou vertical do bloco atual é igual ou maior que o tamanho predefinido, o identificador 2530 pode determinar o primeiro modo como o modo de omissão e o tamanho horizontal ou o tamanho vertical do bloco atual é menor que o modo predefinido, o identificador 2530 pode determinar o segundo modo como o modo de omissão.
[000299] Além disso, por exemplo, o identificador 2530 pode determinar o modo de omissão da informação de movimento com base na informação sobre o bloco vizinho previamente decodificado. Por exemplo, o identificador 2530 pode determinar o modo de omissão de informações de movimento com base em informações sobre um tamanho, um MVR, um modo de predição ou uma direção de predição do bloco vizinho decodificado anteriormente.
[000300] Além disso, por exemplo, o identificador 2530 pode obter um índice (ou um sinalizador) indicando o modo de omissão de um fluxo contínuo de dados e pode determinar o modo de omissão de acordo com o índice (ou sinalizador) obtido. Por exemplo, quando o índice obtido corresponde a 0, o identificador 2530 pode determinar o modo 1 como o modo de omissão; quando o índice corresponde a 1, o identificador 2530 pode determinar o modo 2 como o modo de omissão; e quando o índice corresponde a 2, o identificador 2530 pode determinar o modo 3 como o modo de omissão.
[000301] Quando um tipo de informação de movimento de omissão é identificado pelo identificador 2530, o decodificador 2550 obtém a informação de movimento de omissão usando um método predeterminado. O decodificador 2550 pode decodificar o bloco atual usando uma pluralidade de partes de informações de movimento, incluindo as informações de movimento de omissão e uma informação de movimento obtida do fluxo contínuo de dados.
[000302] Como descrito anteriormente, a pluralidade de informações de movimento pode incluir informações de imagem de referência, informações de vetor de predição de movimento e uma diferença de vetor de movimento. O decodificador 2550 obtém um vetor de movimento do bloco atual adicionando um vetor de movimento de predição à diferença do vetor de movimento e procura um bloco de referência em uma imagem de referência com base no vetor de movimento. O decodificador 2550 reconstrói o bloco atual em um domínio espacial adicionando dados residuais inversamente quantizados e transformados inversamente ao bloco de referência (ou bloco de predição). Uma imagem incluindo o bloco atual reconstruído pode ser filtrada e a imagem filtrada pode ser usada como uma imagem de referência de uma próxima imagem.
[000303] Um método, realizado pelo decodificador 2550, de obter informações de movimento de omissão será agora descrito em detalhes.
[000304] Em uma modalidade, o decodificador 2550 pode obter a informação de movimento de omissão usando informações de movimento de pelo menos um bloco candidato espacial ou temporalmente relacionado ao bloco atual.
[000305] A FIG. 33 ilustra blocos candidatos espacial ou temporalmente relacionados a um bloco atual. Os blocos candidatos são blocos decodificados antes do bloco atual e os blocos espaciais podem incluir pelo menos um bloco espacialmente adjacente ao bloco atual. Além disso, os blocos temporais podem incluir um bloco localizado na mesma posição do bloco atual em uma imagem de referência com uma contagem de ordem de imagem (POC) diferente de um POC de uma imagem atual e pelo menos um bloco espacialmente adjacente ao bloco na mesma posição.
[000306] Com referência à FIG. 33, os blocos espaciais espacialmente relacionados a um bloco atual 3300 podem incluir um bloco externo inferior esquerdo A, um bloco inferior esquerdo B, um bloco externo superior direito C, um bloco superior direito D e um bloco externo superior esquerdo E. Além disso, blocos temporais temporalmente relacionados ao bloco atual 3300 podem incluir um bloco F que está localizado na mesma posição que o bloco atual 3300 em uma imagem de referência tendo um POC diferente do bloco atual 3300 e um bloco G adjacente ao bloco F na mesma posição. Os blocos candidatos da FIG. 33 podem ser meramente exemplos e, em uma modalidade, um ou mais blocos candidatos usados para obter informações de movimento de omissão podem incluir apenas blocos espaciais espacialmente relacionados a um bloco atual ou apenas blocos temporais relacionados temporalmente ao bloco atual.
[000307] Em uma modalidade, o decodificador 2550 pode determinar se existe informação de movimento de uma pluralidade de blocos candidatos relacionada espacial ou temporalmente a um bloco atual de acordo com a ordem de prioridade predefinida e pode obter informações de movimento de omissão com base nas informações de movimento de um bloco candidato cujas informações de movimento é primeiro determinado a existir. Por exemplo, quando a ordem de prioridade é definida do bloco A para o bloco G, o decodificador 2550 procura sequencialmente blocos candidatos com informações de movimento do bloco A para o bloco G. O decodificador 2550 pode obter as informações de movimento de omissão usando o informações de movimento do bloco candidato cuja informação de movimento é primeiramente determinada a existir. Por exemplo, quando um tipo de informação de movimento de omissão é informação de imagem de referência e informação de vetor de movimento de predição, o decodificador 2550 pode determinar informações de movimento do bloco candidato cuja informação de movimento é primeiramente determinada a existir, especificamente, informação de imagem de referência e vetor de movimento de predição informações e pode determinar as informações determinadas como informações de movimento de omissão.
[000308] Alémdisso, em uma modalidade, o decodificador 2550 pode obter a informação de movimento de omissão combinando informações de partes de movimento de uma pluralidade de blocos candidatos tendo informações de movimento entre a pluralidade de blocos candidatos espacialmente ou temporalmente relacionados ao bloco atual. Por exemplo, o decodificador 2550 pode combinar as partes de informações de movimento da pluralidade de blocos candidatos tendo as informações de movimento de acordo com uma equação predeterminada e pode obter um resultado de combinação como a informação de movimento de omissão. A equação predeterminada pode incluir uma equação para derivar um valor médio, um valor mediano, etc. Por exemplo, supondo que um tipo de informação de movimento de omissão seja a informação de imagem de referência Ref idx, quando a informação de imagem de referência Ref idx do bloco A para lea informação de imagem de referência Ref idx do bloco B para 3, O decodificador 2550 poderá obter 2 esse é um valor médio como informação da imagem de referência do bloco atual. As informações da imagem de referência e as informações do vetor de movimento de predição nas informações de movimento podem ser representadas usando valores inteiros e, quando um valor derivado da equação predeterminada não é um valor inteiro, o valor pode ser arredondado para cima, arredondado ou arredondado e a informação do movimento de omissão pode ser obtida. Por exemplo, quando a informação de imagem de referência Ref idx do bloco Aé 1 e a informação de imagem de referência Ref idx do bloco B é 2, o decodificador 2550 pode determinar 2 obtido arredondando 1,5 que é um valor médio entre eles como a informação de imagem de referência Ref idx do bloco atual.
[000309] Em uma modalidade, o decodificador 2550 pode determinar as informações de movimento de omissão com base nas informações de movimento de base predefinidas. Em uma modalidade, Oo decodificador 2550 pode definir as informações de movimento de base em uma unidade de imagem, uma unidade de fatia ou uma unidade de bloco. Alternativamente, o decodificador 2550 pode obter as informações de movimento de base em uma unidade de imagem, uma unidade de fatia ou uma unidade de bloco de um fluxo contínuo de dados.
[000310] O decodificador 2550 pode usar as informações de movimento de base para obter as informações de movimento de omissão. Por exemplo, como as informações de movimento de base, as informações da imagem de referência Ref idx podem ser definidas como 0, as informações do vetor de predição MVP idx podem ser definidas como 0 e a diferença do vetor de movimento MVD pode ser definida como 0. Quando um tipo de informação de movimento de omissão é a informação de imagem de referência Ref idx e a informação de vetor de movimento de predição MVP idx, o decodificador 2550 pode determinar que os valores da informação de imagem de referência Ref idx e a informação de vetor de movimento de predição MVP idx do bloco atual são 0. Um valor definido como a informação de movimento base pode ser modificado de várias maneiras sem se afastar do escopo da presente divulgação.
[000311] Além disso, em uma modalidade, o decodificador 2550 pode obter a informação de movimento de omissão com base na informação de movimento derivada através da derivação do vetor de movimento lateral do decodificador (DMVD). DMVD é a tecnologia que deriva diretamente as informações de movimento no lado do decodificador, em vez de fazer com que as informações de movimento sejam explicitamente incluídas em um fluxo contínuo de dados e um decodificador para obter as informações de movimento e é a tecnologia que deriva as informações de movimento de um bloco atual por meio de correspondência de modelo ou bidirecional correspondência de modelo. A correspondência de modelo é um método que usa uma correlação entre pixels em blocos adjacentes a um bloco de destino de predição e pixels em imagens de referência já decodificadas.
[000312] Em uma modalidade, quando há uma pluralidade de métodos para obter a informação de movimento de omissão, o decodificador 2550 pode obter a informação de movimento de omissão usando pelo menos um método. Em uma modalidade, o decodificador 2550 pode selecionar um método com base em um tipo de informação de movimento de omissão a ser obtida e pode obter a informação de movimento de omissão de acordo com o método selecionado. Por exemplo, quando a informação de movimento de omissão a ser obtida é informação de imagem de referência, a informação de movimento de omissão pode ser obtida usando um primeiro método; quando a informação de movimento de omissão é informação de vetor de movimento de predição, a informação de movimento de omissão pode ser obtida usando um segundo método; e quando a informação de movimento de omissão é uma diferença de vetor de movimento, a informação de movimento de omissão pode ser obtida usando um terceiro método.
[000313] Alémdisso, em uma modalidade, quando há uma pluralidade de informações de movimento de omissão a serem obtidas, o decodificador 2550 pode obter cada uma da pluralidade de informações de movimento de omissão usando vários métodos.
[000314] Em uma modalidade, quando um método para obter as informações de movimento de omissão com base nas informações de movimento de um bloco candidato é o primeiro método, um método de obter as informações de movimento de omissão com base nas informações de movimento de base é o segundo método e um método de obter as a informação de movimento de omissão com base na informação de movimento determinada através do DMVD é o terceiro método, cada uma da pluralidade de informações de movimento de omissão pode ser obtida usando métodos diferentes entre o primeiro método, o segundo método e o terceiro método. Por exemplo, a informação da imagem de referência pode ser determinada usando o primeiro método, a informação do vetor de movimento de predição pode ser determinada usando o segundo método e a diferença do vetor de movimento pode ser determinada usando o terceiro método.
[000315] A FIG. 34 ilustra a sintaxe para obter informações de movimento de omissão de acordo com um modo de omissão de informações de movimento para um bloco predito bidirecionalmente.
[000316] Quando é determinado que um bloco atual é predito bidirecionalmente, a sintaxe da FIG. 34 indica um procedimento para determinar que um processo de omissão de informação de movimento seja aplicado ao bloco atual, identificando um tipo de informação de movimento de omissão de acordo com a informação bi type idx indicando um tipo de predição bidirecional e obtendo a informação de movimento de omissão de acordo com um método predeterminado.
[000317] Comreferência à FIG. 34, em uma frase 'a', quando o bloco atual é predito bidirecionalmente, bi type idx é extraído. Quando o bloco atual é predito bidirecionalmente, pode ser determinado que o processo de omissão de informações de movimento seja aplicado ao bloco atual.
[000318] bi type idx é um índice que indica um modo de omissão e,
quando o índice bi type idx corresponde a 0, é determinado que o modo de omissão é o modo 1. Com referência a uma frase 'b', no modo 1, são analisadas uma diferença de vetor de movimento e um índice de imagem de referência correspondente à lista O e uma diferença de vetor de movimento e um índice de imagem de referência correspondente à lista 1, isto é, são obtidos de um fluxo contínuo de dados. Um vetor de movimento de predição correspondente à lista 0 e um vetor de movimento de predição correspondente à lista 1 são identificados como informações de movimento de omissão. O vetor de movimento de predição correspondente à lista O e o vetor de movimento de predição correspondente à lista 1 pode ser determinado de acordo com um método predeterminado.
[000319] Quando bi type idx corresponde a 1, é determinado que o método de omissão é o modo 2. Referindo-se a uma frase 'c', no modo 2, apenas a diferença do vetor de movimento correspondente à lista 1 é analisada. A diferença do vetor de movimento, o índice de imagem de referência e o vetor de movimento de predição correspondente à lista 0 e o índice de imagem de referência e o vetor de movimento de predição correspondente à lista 1 são determinados como informações de movimento de omissão. O vetor de movimento de predição e o índice de imagem de referência correspondente à lista 0 eovetor de movimento de predição e o índice de imagem de referência correspondente à lista 1 podem ser determinados de acordo com um método predeterminado. No modo 2, a diferença do vetor de movimento correspondente à lista O pode ser determinada como O (ou um vetor zero) que é um valor predefinido. Por conseguinte, o vetor de movimento de predição correspondente à lista O pode ser o vetor de movimento MVO do bloco atual. De acordo com uma modalidade, no modo 2, pelo menos um índice de imagem de referência correspondente à lista 0 e o índice de imagem de referência correspondente à lista
1 podem ser analisados a partir do fluxo contínuo de dados, sem serem determinados como informações de movimento de omissão.
[000320] De acordo com uma modalidade, no modo 2, a diferença do vetor de movimento correspondente à lista O não pode ser incluída em uma pluralidade de informações de partes de movimento usadas para decodificar o bloco atual. Por conseguinte, mesmo quando a diferença do vetor de movimento correspondente à lista 0 não é obtida do fluxo contínuo de dados, o decodificador 2550 pode não identificar a diferença do vetor de movimento correspondente à lista O como a informação de movimento de omissão e pode procurar o bloco de referência usando apenas o índice da imagem de referência e O vetor de movimento de predição correspondente à lista O.
[000321] Quando bi type idx corresponde a 2, é determinado que o modo de omissão é o modo 3. Referindo-se a uma frase 'd', no modo 3, apenas a diferença do vetor de movimento correspondente à lista O é analisada. O índice de imagem de referência e o vetor de movimento de predição correspondente à lista O e o índice de imagem de referência, o vetor de movimento de predição e a diferença do vetor de movimento correspondente à lista 1 são determinados como informações de movimento de omissão. O vetor de movimento de predição e o índice de imagem de referência correspondente à lista 0 eovetor de movimento de predição e o índice de imagem de referência correspondente à lista 1 podem ser determinados de acordo com um método predeterminado. No modo 3, a diferença do vetor de movimento correspondente à lista 1 pode ser determinada como O (ou um vetor zero) que é um valor predefinido. Por conseguinte, o vetor de movimento de predição correspondente à lista 1 pode ser o vetor de movimento MV1 do bloco atual. De acordo com uma modalidade, no modo 3, pelo menos um índice de imagem de referência correspondente à lista 0 e o índice de imagem de referência correspondente à lista
1 podem ser analisados a partir do fluxo contínuo de dados, sem serem determinados como informações de movimento de omissão.
[000322] De acordo com uma modalidade, no modo 3, a diferença do vetor de movimento correspondente à lista 1 não pode ser incluída em uma pluralidade de partes de informações de movimento usadas para decodificar o bloco atual. Por conseguinte, mesmo quando a diferença do vetor de movimento correspondente à lista 1 não é obtida do fluxo contínuo de dados, o decodificador 2550 pode não identificar a diferença do vetor de movimento correspondente à lista 1 como a informação de movimento de omissão e pode procurar o bloco de referência usando apenas o índice da imagem de referência e O vetor de movimento de predição correspondente à lista 1.
[000323] Emumamodalidade, quando um MVR do bloco atual é incluído na informação de movimento usada para decodificar o bloco atual, o obtenedor de fluxo contínuo de dados 2510 pode obter informações indicando o MVR do bloco atual do fluxo contínuo de dados.
[000324] AFIG. 35 é um diagrama que ilustra a sintaxe para obter informações sobre um MVR a partir de um fluxo contínuo de dados.
[000325] Com referência à FIG. 35, quando uma fatia que inclui uma unidade de codificação atual em uma frase 'a' não é uma fatia TI, cu skip flag é extraída da frase 'b'. cu skip flag indica se um modo de salto deve ser aplicado à unidade de codificação atual. Quando se determina que o modo de salto é aplicado na frase 'c', a unidade de codificação atual é processada no modo de salto. Quando é determinado que o modo ignorar não é aplicado na frase 'd', pred mode flag é extraído na frase 'e'. pred mode flag indica se a unidade de codificação atual é intra predita ou inter predita. Quando a unidade de codificação atual não é intra predita, ou seja, é predita entre uma frase 'f', pred mvr idx é extraído na frase 'g'. pred mvr idx pode ser um índice indicando um MVR da unidade de codificação atual e um MVR correspondente a cada índice pode ser como mostrado na Tabela 2. [Tabela 2] ema oc [co [o 1 2 3 4
MVR eme] cs pe ps e o 1/4 1/2 1 2 4 (R) em pel
[000326] O MVR do bloco atual pode se referir à precisão de uma posição de um pixel que pode ser indicada por um vetor de movimento do bloco atual entre os pixels incluídos em uma imagem de referência (ou uma imagem de referência interpolada). O MVR do bloco atual pode ser selecionado entre um ou mais MVRs candidatos. Os um ou mais MVRs candidatos podem incluir pelo menos um de, mas não limitado a, um MVR de unidade de 1/8 pixel, um MVR de unidade de 1/4 de pixel, um MVR de unidade de 1/2 pixel, um MVR de unidade de 1 pixel, um MVR de unidade de 2 pixels, um MVR de unidade de 4 pixels e um MVR de unidade de 8 pixels.
[000327] Em uma modalidade, o obtenedor de fluxo contínuo de dados 2510 pode obter informações sobre o MVR do bloco atual a partir do fluxo contínuo de dados em uma unidade de bloco, unidade de fatia ou unidade de imagem. Em uma modalidade, quando a informação MVR do bloco atual é identificada como informação de movimento de omissão, o decodificador 2550 pode determinar o MVR do bloco atual de acordo com um método predeterminado.
[000328] Em uma modalidade, quando um vetor de movimento do bloco atual é determinado de acordo com um MVR predeterminado, oO decodificador 2550 pode ajustar um vetor de movimento de predição e/ou uma diferença de vetor de movimento. Quando o vetor de movimento de predição e/ou a diferença do vetor de movimento do bloco atual são ajustados, isso pode significar que a posição de um pixel indicada pelo vetor de movimento de predição e/ou a diferença do vetor de movimento do bloco atual seja alterada de acordo com o MVR do bloco atual. Um método para ajustar o vetor de movimento de predição e/ou a diferença do vetor de movimento do bloco atual será descrito a seguir com referência às FIGS. 36 a 38.
[000329] A FIG. 26 é um fluxograma para descrever um método de decodificação de informações de movimento, de acordo com uma modalidade.
[000330] Na operação S2610, o aparelho de decodificação de informação de movimento 2500 identifica um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade de informações de movimento usadas para decodificar um bloco atual que é predito.
[000331] Em uma modalidade, quando é determinado que um processo de omissão de informação de movimento é aplicado ao bloco atual, o aparelho de decodificação de informação de movimento 2500 pode reconhecer que existe a informação de movimento de omissão. O aparelho de decodificação de informação de movimento 2500 pode determinar um modo de omissão de informação de movimento e pode identificar um tipo de informação de movimento de omissão com base no modo de omissão de informação de movimento determinado.
[000332] Na operação S2620, o aparelho de decodificação de informação de movimento 2500 pode obter a informação de movimento de omissão com base em um método predeterminado.
[000333] Por exemplo, o aparelho de decodificação de informação de movimento 2500 pode obter a informação de movimento de omissão com base na informação de movimento de pelo menos um bloco candidato.
[000334] Por exemplo, o aparelho de decodificação de informação de movimento 2500 pode obter a informação de movimento de omissão com base em informações de movimento de base predefinidas.
[000335] Além disso, por exemplo, o aparelho de decodificação de informação de movimento 2500 pode obter a informação de movimento de omissão com base na informação de movimento obtida através do DMVD.
[000336] Um método para obter as informações de movimento de omissão foi descrito anteriormente em detalhes, descrições detalhadas não serão fornecidas aqui.
[000337] O aparelho de decodificação de informação de movimento 250 pode obter informação de movimento diferente da informação de movimento de omissão entre a pluralidade de informações de movimento do fluxo contínuo de dados.
[000338] Na operação S2630, o aparelho de decodificação de informação de movimento 250 decodifica o bloco atual com base na pluralidade de informações de partes de movimento, incluindo a informação de movimento de omissão obtida.
[000339] A FIG. 27 é um diagrama de blocos que ilustra uma configuração do aparelho de codificação de informação de movimento 2700, de acordo com uma modalidade.
[000340] Com referência à FIG. 27, o aparelho de codificação de informação de movimento 2700 de acordo com uma modalidade pode incluir um determinante 2710, um codificador 2730 e um gerador de fluxo contínuo de dados 2750. O aparelho de codificação de informação de movimento 2700 pode ser incluído no aparelho de codificação de imagem 200. Por exemplo, o determinante 2710 e o codificador 2730 do aparelho de codificação de informação de movimento 2700 podem ser incluídos no codificador 220 do aparelho de codificação de imagem 200 e o gerador de fluxo contínuo de dados 2750 do aparelho de codificação de informação de movimento 2700 pode ser incluído no gerador de fluxo contínuo de dados 210 do aparelho de codificação de imagem 200.
[000341] O determinante 2710 determina um tipo de informação de movimento de omissão a ser omitida de um fluxo contínuo de dados entre uma pluralidade de informações de movimento usadas para decodificar um bloco atual que deve ser predito.
[000342] Como descrito anteriormente, a pluralidade de partes de informações de movimento usadas para decodificar o bloco atual pode incluir informações de imagem de referência, informações de vetores de predição de movimento e uma diferença de vetor de movimento e podem incluir ainda informações de MVR do bloco atual de acordo com uma modalidade.
[000343] O determinante 2710 pode determinar se um processo de omissão de informação de movimento deve ser aplicado ao bloco atual, antes de determinar que parte ou toda a pluralidade de informações de partes de movimento é omitida.
[000344] Em uma modalidade, o determinante 2710 pode determinar se o processo de omissão de informação de movimento é aplicado de acordo com um critério predeterminado.
[000345] Em uma modalidade, o determinante 2710 pode determinar se o processo de omissão de informações de movimento é aplicado, com base em pelo menos um entre um MVR do bloco atual, uma direção de predição do bloco atual, informações sobre o bloco atual e informações sobre um bloco vizinho anteriormente codificado.
[000346] Em uma modalidade, o determinante 2710 pode determinar se o processo de omissão de informação de movimento é aplicado, com base no mesmo critério que o aparelho de decodificação de informação de movimento 2500, em consideração de um caso em que a informação indicando se o processo de omissão de informação de movimento é aplicado não é transmitida para o aparelho de decodificação de informações de movimento 2500.
[000347] Por exemplo, quando o MVR do bloco atual corresponde a um MVR predeterminado (por exemplo, uma resolução de unidade de 1/4 de pixel), o determinante 2710 pode determinar que o processo de omissão de informações de movimento é aplicado ao bloco atual.
[000348] Por exemplo, quando o bloco atual é predito bidirecionalmente, o determinante 2710 pode determinar que o processo de omissão de informações de movimento é aplicado ao bloco atual.
[000349] Além disso, por exemplo, o determinante 2710 pode determinar se o processo de omissão de informações de movimento é aplicado com base nas informações sobre o bloco atual. O determinante 2710 pode determinar se o processo de omissão de informações de movimento é aplicado comparando um tamanho do bloco atual com um tamanho predefinido.
[000350] Por exemplo, o determinante 2710 pode determinar se o processo de omissão de informações de movimento é aplicado, com base em informações sobre um tamanho, um MVR, um modo de predição ou uma informação de predição de um bloco vizinho decodificado anteriormente.
[000351] Em uma modalidade, o determinante 2710 pode determinar um modo de omissão de informação de movimento do bloco atual e pode determinar um tipo de informação de movimento de omissão não incluída no fluxo contínuo de dados com base no modo de omissão de informação de movimento determinado.
[000352] Em uma modalidade, o determinante 2710 pode determinar o modo de omissão de informação de movimento de acordo com um critério predeterminado.
[000353] Em uma modalidade, o determinante 2710 pode determinar o modo de omissão de informações de movimento, com base em pelo menos um entre um MVR do bloco atual, a direção de predição do bloco atual, as informações sobre o bloco atual e informações sobre um bloco vizinho anteriormente codificado.
[000354] Em uma modalidade, o determinante 2710 pode determinar o modo de omissão de informação de movimento, com base no mesmo critério que o aparelho de decodificação de informação de movimento 2500, em consideração de um caso em que à informação indicando que o modo de omissão de informação de movimento não é transmitido para o aparelho de decodificação de informações de movimento 2500.
[000355] Pelo menos um número e um tipo de informação de movimento de omissão podem ser determinados para cada modo de omissão das informações de movimento. Por exemplo, pelo menos um dos números e um tipo de informação de movimento de omissão em um primeiro modo de omissão e pelo menos um dos números e um tipo de informação de movimento de omissão em um segundo modo de omissão podem ser determinados individualmente. Pelo menos um número e um tipo de informação de movimento de omissão podem variar de acordo com cada modo de omissão.
[000356] Um tipo de informação de movimento de omissão correspondente ao modo de informação de omissão de movimento pode ser determinado individualmente quando o bloco atual é predito unidirecionalmente e quando o bloco atual é predito bidirecionalmente.
[000357] Em uma modalidade, o determinante 2710 pode determinar um modo de omissão de informações de movimento com base no MVR do bloco atual. Por exemplo, quando o MVR do bloco atual é uma resolução de unidade de 1/4 de pixel, o determinante 2710 pode determinar um primeiro modo como o modo de omissão e, quando o MVR do bloco atual é uma resolução de unidade de 1/2 pixel, o determinante 2710 pode determinar um segundo modo como o modo de omissão.
[000358] Além disso, em uma modalidade, o determinante 2710 pode determinar o modo de omissão de acordo com se o bloco atual se refere a uma imagem de referência na lista O (isto é, predição unidirecional), seo bloco atual se refere a uma imagem de referência na lista 1 (isto é, predição unidirecional) ou se o bloco atual se refere à imagem de referência na lista 0 e à imagem de referência na lista 1 (isto é, predição bidirecional).
[000359] Além disso, em uma modalidade, o determinante 2710 pode determinar o modo de omissão de informações de movimento com base nas informações sobre o bloco atual. Por exemplo, o determinante 2710 pode determinar o modo de omissão da informação de movimento comparando um tamanho do bloco atual com um tamanho predefinido. Em detalhes, quando um tamanho horizontal ou vertical do bloco atual é igual ou maior que o tamanho predefinido, o determinante 2710 pode determinar o primeiro modo como o modo de omissão e quando o tamanho horizontal ou o tamanho vertical do bloco atual é menor que o tamanho predefinido, o determinante 2710 pode determinar o segundo modo como o modo de omissão.
[000360] Além disso, em uma modalidade, o determinante 2710 pode determinar o modo de omissão de informações de movimento com base nas informações sobre o bloco vizinho previamente decodificado. Por exemplo, o determinante 2710 pode determinar o modo de omissão de informações de movimento com base em informações sobre um tamanho, um MVR, um modo de predição ou uma direção de predição do bloco vizinho decodificado anteriormente.
[000361] Quando um tipo de informação de movimento de omissão é determinado pelo determinante 2710, o codificador 2730 obtém a informação de movimento de omissão com base em um método predeterminado.
[000362] Em uma modalidade, o codificador 2730 pode obter a informação de movimento de omissão usando informações de movimento de pelo menos um bloco candidato espacial ou temporalmente relacionado ao bloco atual.
[000363] Em uma modalidade, o codificador 2730 pode determinar se existe informação de movimento de uma pluralidade de blocos candidatos relacionada espacial ou temporalmente ao bloco atual de acordo com a ordem de prioridade predefinida e pode obter as informações de movimento de omissão com base nas informações de movimento de um bloco candidato cujas informações de movimento é primeiro determinado a existir.
[000364] Além disso, em uma modalidade, o codificador 2730 pode obter a informação de movimento de omissão combinando as partes de informações de movimento de uma pluralidade de blocos candidatos tendo informações de movimento entre a pluralidade de blocos candidatos espacial ou temporalmente relacionados ao bloco atual. Por exemplo, o codificador 2730 pode combinar as partes de informações de movimento da pluralidade de blocos candidatos tendo as informações de movimento de acordo com uma equação predeterminada e pode obter um resultado de combinação como a informação de movimento de omissão. A equação predeterminada pode incluir uma equação para derivar um valor médio, um valor mediano, etc.
[000365] Em uma modalidade, o codificador 2730 pode determinar as informações de movimento de omissão com base nas informações de movimento de base. A informação de movimento de base pode ser definida anteriormente no codificador 2730. Em uma modalidade, o codificador 2730 pode definir as informações de movimento de base em uma unidade de imagem, uma unidade de fatia ou uma unidade de bloco. Em uma modalidade, o gerador de fluxo contínuo de dados 2750 pode fazer com que as informações de movimento de base determinadas na unidade de imagem, na unidade de fatia ou na unidade de bloco sejam incluídas no fluxo contínuo de dados.
[000366] Além disso, em uma modalidade, o codificador 2730 pode obter a informação de movimento de omissão com base na informação de movimento derivada através do DMVD.
[000367] Em uma modalidade, quando há uma pluralidade de métodos para obter a informação de movimento de omissão, o codificador 2730 pode obter a informação de movimento de omissão usando pelo menos um método. Em uma modalidade, o codificador 2730 pode selecionar um método com base em um tipo de informação de movimento de omissão a ser obtida e pode obter a informação de movimento de omissão de acordo com o método selecionado. Por exemplo, quando a informação de movimento de omissão a ser obtida é informação de imagem de referência, a informação de movimento de omissão pode ser obtida usando o primeiro método; quando a informação de movimento de omissão é informação de vetor de movimento de predição, a informação de movimento de omissão pode ser obtida usando o segundo método; e quando a informação de movimento de omissão é uma diferença de vetor de movimento, a informação de movimento de omissão pode ser obtida usando o terceiro método.
[000368] Alémdisso, em uma modalidade, quando há uma pluralidade de informações de movimento de omissão a serem obtidas, o codificador 2730 pode obter cada uma da pluralidade de informações de movimento de omissão usando diferentes métodos.
[000369] Além disso, o codificador 2730 pode determinar as informações de movimento restantes com base nas informações de movimento de omissão obtidas. Por exemplo, o codificador 2730 pode determinar as informações de movimento restantes com base em um custo. Um custo de distorção da taxa pode ser usado durante o cálculo do custo.
[000370] Por exemplo, quando as informações de movimento de omissão incluem informações de imagem de referência, uma imagem de referência referenciada pelo bloco atual pode ser especificada de acordo com as informações de imagem de referência determinadas com base em um método predeterminado, e um candidato de predição a ser usado como um vetor de movimento de predição pode ser selecionado com base em um custo entre um ou mais candidatos de predição. O codificador 2730 pode determinar uma distância entre o bloco atual e um bloco de referência pesquisado em uma imagem de referência como um vetor de movimento e pode determinar uma diferença entre um vetor de movimento do bloco atual e um vetor de movimento de predição como uma diferença de vetor de movimento.
[000371] Alémdisso, por exemplo, quando a informação de movimento de omissão inclui informação de vetor de movimento de predição, o codificador 2730 obtém um vetor de movimento de predição com base em um método predeterminado e determina uma ou mais imagens de referência para o bloco atual com base no custo entre as imagens codificadas anteriormente. O codificador 27360 pode determinar um vetor de movimento com base nas imagens de referência determinadas e pode determinar uma diferença entre o vetor de movimento de predição obtido de acordo com um método predeterminado e um vetor de movimento do bloco atual como uma diferença de vetor de movimento.
[000372] Alémdisso, por exemplo, quando a informação de movimento de omissão inclui uma diferença de vetor de movimento, o codificador 2730 determina a diferença de vetor de movimento com base em um método predeterminado. Por exemplo, o codificador 2730 pode determinar a diferença do vetor de movimento como um vetor zero. O codificador 2730 pode determinar uma imagem de referência do bloco atual com base em um custo e deriva vetores de movimento correspondentes a cada candidato de predição combinando cada candidato de predição com a diferença de vetor de movimento determinada de acordo com um método predeterminado. O codificador 2730 pode determinar um vetor de movimento com base em um custo entre os vetores de movimento e pode determinar um candidato de predição correspondente ao vetor de movimento determinado como um vetor de movimento de predição.
[000373] Além disso, por exemplo, quando as informações de movimento de omissão incluem informações de MVR, o codificador 2730 pode obter um MVR do bloco atual com base em um método predeterminado e pode determinar uma imagem de referência, um vetor de movimento de predição e uma diferença de vetor de movimento com base em um custo.
[000374] Em uma modalidade, quando o bloco atual é predito bidirecionalmente, o codificador 2730 pode determinar que um processo de omissão de informações de movimento seja aplicado ao bloco atual e pode determinar um modo de omissão de informações de movimento do modo 1, modo 2 ou modo 3.
[000375] Por exemplo, quando o modo de omissão de informações de movimento é o modo 1, o codificador 2730 pode determinar uma diferença de vetor de movimento e um índice de imagem de referência correspondente à lista O e uma diferença de vetor de movimento e um índice de imagem de referência correspondente à lista 1 como informações de movimento a ser incluídas no fluxo contínuo de dados e pode determinar um vetor de movimento de predição correspondente à lista 0 e um vetor de movimento de predição correspondente à lista 1 como a informação de movimento de omissão. O vetor de movimento de predição correspondente à lista 0 e o vetor de movimento de predição correspondente à lista 1 pode ser determinado de acordo com um método predeterminado.
[000376] Por exemplo, quando o modo de omissão de informação de movimento é o modo 2, o codificador 2730 pode determinar a diferença do vetor de movimento correspondente à lista 1 como informação de movimento a ser incluída no fluxo contínuo de dados. O codificador
2730 pode determinar a diferença do vetor de movimento, o índice de imagem de referência e o vetor de movimento de predição correspondente à lista 0 e o índice de imagem de referência e o vetor de movimento de predição correspondente à lista 1 como informações de movimento de omissão. O vetor de movimento de predição e o índice de imagem de referência correspondente à lista 0 e o vetor de movimento de predição e o índice de imagem de referência correspondente à lista 1 podem ser determinados de acordo com um método predeterminado. No modo 2, a diferença do vetor de movimento correspondente à lista O pode ser determinada como 0 (ou um vetor zero) que é o valor predefinido. De acordo com uma modalidade, no modo 2, a diferença do vetor de movimento correspondente à lista O não pode ser incluída na pluralidade de partes de informações de movimento usadas para decodificar o bloco atual. Por conseguinte, mesmo quando a diferença do vetor de movimento correspondente à lista O não está incluída no fluxo contínuo de dados, o codificador 2730 pode não obter separadamente a diferença do vetor de movimento.
[000377] Por exemplo, quando o modo de omissão de informação de movimento é o modo 3, o codificador 2730 pode determinar a diferença do vetor de movimento correspondente à lista O como informação de movimento a ser incluída no fluxo contínuo de dados. O codificador 2730 pode determinar o índice de imagem de referência e o vetor de movimento de predição correspondente à lista O e o índice de imagem de referência, o vetor de movimento de predição e a diferença do vetor de movimento correspondente à lista 1 como informações de movimento de omissão. O vetor de movimento de predição e o índice de imagem de referência correspondente à lista O e o vetor de movimento de predição e o índice de imagem de referência correspondente à lista 1 podem ser obtidos de acordo com um método predeterminado. No modo 3, a diferença do vetor de movimento correspondente à lista 1 pode ser determinada como 0 (ou um vetor zero) que é um valor predefinido. De acordo com uma modalidade, no modo 3, a diferença do vetor de movimento correspondente à lista 1 não pode ser incluída em uma pluralidade de partes de informações de movimento usadas para decodificar o bloco atual. Por conseguinte, mesmo quando a diferença do vetor de movimento correspondente à lista 1 não está incluída no fluxo contínuo de dados, o codificador 2730 pode não obter separadamente a diferença do vetor de movimento.
[000378] O gerador de fluxo contínuo de dados 2750 gera o fluxo contínuo de dados, incluindo informações relacionadas ao bloco atual que é codificado de acordo com a predição inter.
[000379] Em uma modalidade, o fluxo contínuo de dados pode incluir pelo menos uma das informações indicando se o processo de omissão de informações de movimento é aplicado, informações indicando o modo de omissão de informações de movimento e informações de movimento que não sejam as informações de movimento de omissão entre a pluralidade de informações de movimento.
[000380] Além disso, o fluxo contínuo de dados pode ainda incluir informações indicando o MVR do bloco atual que é um de informações de movimento. O fluxo contínuo de dados, incluindo as informações indicando o MVR, pode ter uma estrutura como a sintaxe da FIG. 35.
[000381] Em uma modalidade, quando um vetor de movimento do bloco atual é determinado de acordo com um MVR predeterminado, o codificador 2730 pode ajustar um vetor de movimento de predição e/ou uma diferença de vetor de movimento. Quando o vetor de movimento de predição e/ou a diferença do vetor de movimento do bloco atual é ajustado, isso pode significar que a posição de um pixel indicada pelo vetor de movimento de predição e/ou a diferença do vetor de movimento do bloco atual seja alterada de acordo com o MVR do bloco atual. Um método para ajustar o vetor de movimento de predição e/ou a diferença do vetor de movimento do bloco atual será descrito a seguir com referência às FIGS. 36 a 38.
[000382] A FIG. 28 é um fluxograma para descrever um método de codificação de informação de movimento, de acordo com uma modalidade.
[000383] Na operação S2810, o aparelho de codificação de informação de movimento 2700 determina um tipo de informação de movimento de omissão que não deve ser incluído em um fluxo contínuo de dados entre uma pluralidade de informações de movimento usadas para decodificar um bloco atual.
[000384] Em uma modalidade, o aparelho de codificação de informação de movimento 2700 pode primeiro determinar se um processo de omissão de informação de movimento deve ser aplicado ao bloco atual.
[000385] Em uma modalidade, oO aparelho de codificação de informação de movimento 2700 pode determinar um modo de omissão de informação de movimento e pode determinar um tipo de informação de movimento de omissão que não deve ser incluído no fluxo contínuo de dados de acordo com o modo de omissão de informação de movimento determinado.
[000386] Em uma modalidade, o aparelho de codificação de informação de movimento 2700 pode primeiro determinar um tipo de informação de movimento de omissão que não deve ser incluído no fluxo contínuo de dados e pode determinar o modo de omissão de informação em movimento correspondente à informação de movimento de omissão determinada.
[000387] Na operação S2820, o aparelho de codificação de informação de movimento 2700 obtém a informação de movimento de omissão usando um método predeterminado.
[000388] Por exemplo, o aparelho de codificação de informação de movimento 2700 pode obter a informação de movimento de omissão com base na informação de movimento de pelo menos um bloco candidato.
[000389] Por exemplo, o aparelho de codificação de informação de movimento 2700 pode obter a informação de movimento de omissão com base em informações de movimento de base predefinidas.
[000390] Além disso, por exemplo, o aparelho de codificação de informação de movimento 2700 pode obter a informação de movimento de omissão com base na informação de movimento obtida através do DMVD.
[000391] Um método para obter as informações de movimento de omissão foi descrito anteriormente em detalhes, descrições detalhadas não serão fornecidas aqui.
[000392] O aparelho de codificação de informação de movimento 2700 pode obter informação de movimento diferente da informação de movimento de omissão entre a pluralidade de informações de movimento com base em um custo.
[000393] Na operação S2830, o aparelho de codificação de informação de movimento 2700 gera um fluxo contínuo de dados incluindo informações de movimento diferentes das informações de movimento de omissão.
[000394] Em uma modalidade, o fluxo contínuo de dados pode ainda incluir pelo menos uma das informações indicando se o processo de omissão de informações de movimento é aplicado e as informações indicando o modo de omissão de informações de movimento.
[000395] Quando um MVR é determinado para o bloco atual e um vetor de movimento é determinado de acordo com o MVR, será descrito um método para ajustar um vetor de movimento de predição e/ou uma diferença de vetor de movimento.
[000396] O aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem determinar um MVR candidato entre um ou mais MVRs candidatos selecionáveis para o bloco atual como um MVR do bloco atual. O aparelho de decodificação de informações de movimento 2500 pode determinar o MVR do bloco atual com base nas informações de MVR obtidas do fluxo contínuo de dados. Quando o MVR do bloco atual é determinado, o vetor de movimento de predição e/ou a diferença do vetor de movimento podem ser ajustados de acordo com o MVR do bloco atual.
[000397] A FIG. 36 ilustra posições de pixels que podem ser indicadas por vetores de movimento de acordo com um MVR de unidade de 1/4 de pixel, um MVR de unidade de 1/2 pixel, um MVR de unidade de 1 pixel e um MVR de unidade de 2 pixels quando um MVR mínimo selecionável é o MVR de unidade de 1/4 de pixel.
[000398] (a), (b), (c) e (d) da FIG. 36 respectivamente ilustram coordenadas (marcadas por quadrados pretos) de pixels que podem ser indicados por vetores de movimento do MRV de unidade 1/4 de pixel, MRV de unidade de 1/2 pixel, MRV de unidade de 1 pixel e MRV de unidade de 2 pixels com base em coordenadas (0, 0).
[000399] Quando um MVR mínimo é o MVR de unidade de 1/4 de pixel, as coordenadas do pixel que podem ser indicadas pelo vetor de movimento do MVR de unidade de 1/4 de pixel são (a/4, b/4) (a e b são números inteiros), as coordenadas do pixel que podem ser indicadas pelo vetor de movimento do MRV de unidade de 1/2 pixel são (2c/4, 2d/4) (ce d são números inteiros), as coordenadas do pixel que podem ser indicadas pelo vetor de movimento do MRV de unidade de 1 pixel são (4e/4, 4f/4) (e e f são números inteiros e as coordenadas do pixel que podem ser indicadas pelo vetor de movimento do MRV de unidade de 2 pixels são ( 89/4, 8h/4) (geh são inteiros). Ou seja, quando um MVR mínimo tem uma unidade de pixel de 2" (m é um número inteiro), as coordenadas de um pixel que podem ser indicadas por uma unidade de pixel de 2º (n é um número inteiro) são (2ºT7*i/2", 2º"*3/27") (iej são números inteiros). Embora um vetor de movimento seja determinado de acordo com um MVR específico, o vetor de movimento é representado por coordenadas em uma imagem interpolada de acordo com uma unidade de 1/4 de pixel que é um MVR mínimo.
[000400] Em uma modalidade, porque o aparelho de codificação de informação de movimento 2700 determina um vetor de movimento em uma imagem interpolada de acordo com um MVR mínimo, a fim de representar o vetor de movimento usando um número inteiro, o vetor de movimento de uma unidade inteira pode ser representado multiplicando o vetor de movimento por um valor recíproco de uma unidade de pixel do MVR mínimo, por exemplo, 2” quando o MVR mínimo tem uma unidade de pixel de 2" (m é um número inteiro). O vetor de movimento da unidade inteira multiplicado por 2" usado no aparelho de codificação de informação de movimento 2700 e no aparelho de decodificação de informação de movimento 2500.
[000401] Quando o vetor de movimento do MVR de unidade de 1/2 pixel, começando pelas coordenadas (0, 0), indica coordenadas (2/4, 6/4) e o MVR mínimo tem uma unidade de 1/4 de pixel, o aparelho de codificação de informações de movimento 2700 pode determinar (2, 6), que é obtido multiplicando o vetor de movimento por um número inteiro 4, como um vetor de movimento.
[000402] Quando um MVR do bloco atual é maior que um MVR mínimo entre os MVRs selecionáveis candidatos, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem ajustar um vetor de movimento de predição do bloco atual. Quando o MVR do bloco atual é maior que o MVR mínimo, isso pode significar que uma unidade de pixels do MVR do bloco atual é maior que uma unidade de pixels do MVR mínimo.
Por exemplo, um MVR de unidade de 1 pixel é maior que um MVR de unidade de 1/2 pixel e o MVR de unidade de 1/2 pixel é maior que um MVR de unidade de 1/4 de pixel.
[000403] A fim de ajustar o vetor de movimento de predição representado por coordenadas em uma imagem interpolada de acordo com o MVR mínimo usando o MVR do bloco atual, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem ajustar o vetor de movimento de predição para indicar pixels vizinhos em vez de um pixel indicado pelo vetor de movimento de predição.
[000404] Por exemplo, para ajustar um vetor de movimento de predição A indicando um pixel 3710 de coordenadas (19, 27) com base nas coordenadas (0, O) na FIG. 37 a um MVR de unidade de 1 pixel que é o MVR do bloco atual, as coordenadas (19, 27) do pixel 3710 indicado pelo vetor de movimento de predição A podem ser divididas por um número inteiro 4 (ou seja, pode ser reduzido) e as coordenadas (19/4, 27/4) obtidas como resultado da divisão podem não indicar uma unidade inteira de pixels.
[000405] O aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem ajustar o vetor de movimento de predição em escala reduzida para indicar uma unidade de pixel inteiro. Por exemplo, as coordenadas dos pixels inteiros vizinhos em torno das coordenadas (19/4, 27/14) são (16/4, 28/4), (16/4, 24/4), (20/4, 28/4) e (20/4, 24/4). Neste caso, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem ajustar o vetor de movimento de predição em escala reduzida A para indicar as coordenadas (20/4, 28/4) localizadas no canto superior direito em vez das coordenadas (19/4, 27/4) e pode multiplicar um número inteiro 4 (isto é, escala superior) de modo que um vetor de movimento de predição finalmente ajustado D indique um pixel 3740 correspondente às coordenadas (20, 28).
[000406] Em uma modalidade, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem ajustar o vetor de movimento de predição em escala reduzida para indicar coordenadas localizadas na parte inferior esquerda, coordenadas localizadas na parte superior direita ou coordenadas na parte inferior direita.
[000407] Em uma modalidade, quando qualquer um de um valor de coordenada x e um valor de coordenada y indicado pelo vetor de movimento de predição em escala reduzida corresponde a um número inteiro, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem aumentar ou diminuir apenas o valor de coordenada que não corresponde a um número inteiro para corresponder a um número inteiro. Ou seja, quando apenas o valor da coordenada x indicado pelo vetor de movimento de predição em escala reduzida corresponde a um número inteiro, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem fazer com que o vetor de movimento de predição ajustado indique um pixel inteiro localizado no superior ou inferior do pixel indicado pelo vetor de movimento de predição antes do ajuste. Alternativamente, quando apenas o valor da coordenada y indicado pelo vetor de movimento de predição em escala reduzida corresponde a um número inteiro, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem fazer com que o vetor de movimento de predição ajustado indique um pixel inteiro localizado à esquerda ou à direita do pixel indicado pelo vetor de movimento de predição antes do ajuste.
[000408] Quando o vetor de movimento de predição é ajustado, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem selecionar diferentemente um ponto indicado pelo vetor de movimento de predição ajustado de acordo com o MVR do bloco atual.
[000409] Por exemplo, como mostrado na FIG. 38, quando o MVR do bloco atual é um MVR de unidade de 1/2 pixel, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem fazer com que o vetor de movimento de predição ajustado indique um pixel 3830 na parte superior esquerda de um pixel indicado pelo vetor de movimento de predição antes do ajuste; quando o MVR do bloco atual é um MVR de unidade de 1 pixel, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem fazer com que o vetor de movimento de predição ajustado indique um pixel 3820 na parte superior direita do pixel indicado pelo vetor de movimento de predição antes do ajuste; e quando o MVR do bloco atual é um MVR de unidade de 2 pixels, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem fazer com que o vetor de movimento de predição ajustado indique um pixel 3840 na parte inferior direita do pixel indicado por o vetor de movimento de predição antes do ajuste.
[000410] Um processo de ajuste de um vetor de movimento de predição descrito com referência às FIGS. 37 e 38 também podem ser aplicados a um processo de ajuste de uma diferença de vetor de movimento. Quando a diferença do vetor de movimento é determinada como informação de movimento de omissão e é derivada de acordo com um método predeterminado pelo aparelho de codificação de informação de movimento 2700 e pelo aparelho de decodificação de informação de movimento 2500, porque a diferença de vetor de movimento derivada indica coordenadas em uma imagem que é interpolada de acordo com um MVR mínimo como o vetor de movimento de predição, a precisão da diferença do vetor de movimento corresponde à precisão de um vetor de movimento do bloco atual.
[000411] Quando o vetor de movimento de predição é ajustado em consideração ao MVR do bloco atual e ao MVR mínimo, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem ajustar o vetor de movimento de predição de acordo com a Equação 1. [Equação 1] MVP' = ((MVP >> k) + deslocamento) < k
[000412] Na Equação 1l,MVP 'denota o vetor de movimento de predição ajustado e k que é um valor determinado de acordo com a diferença entre o MVR do bloco atual e o MVR mínimo pode ser m-n quando o MVR do bloco atual é uma unidade de pixel de 2" (mé um número inteiro), o MVR mínimo é uma unidade de 2º pixels (n é um número inteiro) e m > n. Em uma modalidade, k pode ser um índice de um MVR e quando os MVRs candidatos incluem um MVR de unidade de 1/4 de pixel, um MVR de unidade de 1/2 pixel, um MVR de unidade de 1 pixel, um MVR de unidade de 2 pixels e um de MVR de unidade de 4 pixels, os MVRs correspondentes aos índices são mostrados na Tabela 2. Quando um índice MVR é recebido de um fluxo contínuo de dados, o aparelho de decodificação de informação de movimento 2500 pode ajustar o vetor de movimento de predição de acordo com a Equação 1, usando o índice MVR como k.
[000413] Além disso, na Equação 1, >> ou < que é uma operação de deslocamento de bits refere-se a uma operação de redução ou aumento de um tamanho do vetor de movimento de predição. Além disso, deslocamento indica um valor adicionado ou subtraído para indicar um pixel inteiro quando o vetor de movimento de predição reduzido de acordo com um valor k não indica um pixel inteiro. o deslocamento pode ser determinado diferentemente de acordo com cada um de um valor da coordenada x e um valor da coordenada y do vetor de movimento de predição.
[000414] Quando a diferença do vetor de movimento é ajustada, a Equação 1 pode ser modificada para a Equação 1-1. [Equação 1-1) MVD' = ((MVD >> k) + deslocamento) < k
[000415] Na Equação l, MVD' denota uma diferença de vetor de movimento ajustado e MVD denota a diferença de vetor de movimento antes do ajuste obtido de acordo com um método predeterminado.
[000416] Emumamodalidade, quando o vetor de movimento de predição em escala reduzida (ou diferença do vetor de movimento) é alterado para indicar um pixel inteiro, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem alterar o vetor de movimento de predição em escala reduzida de acordo com o mesmo critério.
[000417] Em uma modalidade, quando um valor de coordenada x e um valor de coordenada y do vetor de movimento de predição em escala reduzida (ou diferença do vetor de movimento) não indicam um pixel inteiro, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem sempre aumentar ou diminuir o valor da coordenada x e o valor da coordenada y do vetor de movimento de predição em escala reduzida (ou diferença do vetor de movimento) para indicar um pixel inteiro. Alternativamente, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem arredondar o valor da coordenada x e o valor da coordenada y do vetor de movimento de predição em escala reduzida
(ou diferença do vetor de movimento) para indicar um pixel inteiro.
[000418] Emumamodalidade, quando o vetor de movimento de predição (ou a diferença do vetor de movimento) é ajustado, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem omitir a escala reduzida e a escala ampliada do vetor de movimento de predição (ou a diferença do vetor de movimento) e podem ajustar o vetor de movimento de predição (ou a diferença do vetor de movimento) em um plano de coordenadas em uma imagem de referência interpolada de acordo com o MVR mínimo para indicar uma unidade de pixel correspondente ao MVR do bloco atual.
[000419] Alémdisso, em uma modalidade, quando o vetor de movimento de predição e a diferença do vetor de movimento são ajustados em consideração ao MVR do bloco atual e ao MVR mínimo, o aparelho de codificação de informação de movimento 2700 e o aparelho de decodificação de informação de movimento 2500 podem ajustar o movimento de predição vetor e a diferença do vetor de movimento de acordo com a Equação 2 e a Equação 2-1, em vez da Equação 1 e da Equação 1-1.
[Equação 2] MVP' = ((MVP + deslocamento) >> k) <k [Equação 2-1] MVD' = ((MVD + deslocamento) >> k) < k
[000420] Embora a Equação 2 e a Equação 2-1 sejam semelhantes à Equação 1 e à Equação 1-1, diferentemente da Equação 1 e da Equação 1-1, em que o deslocamento é aplicado ao vetor de movimento de predição em escala reduzida e à diferença do vetor de movimento em escala reduzida, o deslocamento é aplicado ao vetor de movimento de predição original e a diferença do vetor de movimento original e depois é reduzido em escala de acordo com k.
[000421] Quando a diferença do vetor de movimento é incluída no fluxo contínuo de dados, o aparelho de codificação de informações de movimento 2700 pode reduzir em escala a diferença do vetor de movimento como na Equação 3 e pode fazer com que as informações indiquem que a diferença do vetor de movimento em escala reduzida seja incluída no fluxo contínuo de dados. [Equação 3] MVD' = (MVD >> k)
[000422] Na Equação 3, MVD' denota a diferença do vetor de movimento em escala reduzida e k, que é um valor determinado de acordo com uma diferença entre o MVR mínimo e o MVR do bloco atual, é o mesmo que k na Equação 1.
[000423] Em uma modalidade, o aparelho de codificação de informação de movimento 2700 pode reduzir o vetor de movimento do bloco atual e o vetor de movimento de predição ajustado de acordo com um valor k e, em seguida, pode codificar uma diferença entre o vetor de movimento em escala reduzida e o vetor de movimento de predição ajustado em escala reduzida como a diferença de vetor de movimento.
[000424] Em uma modalidade, o aparelho de codificação de informação de movimento 2700 pode calcular a diferença do vetor de movimento em escala reduzida de acordo com a Equação 4, em vez da Equação 3. [Equação 4] MVD' = (MV - PMV')/(R * S)
[000425] Na Equação 4, MVD' denota a diferença do vetor de movimento em escala reduzida, MV denota o vetor de movimento do bloco atual e PMV' denota o vetor de movimento de predição ajustado.
Além disso, R indica um valor de unidade de pixel do MVR do bloco atual (por exemplo, 1/4 quando o MVR do bloco atual é um MVR de unidade de 1/4 de pixel). Além disso, S indica um valor recíproco de uma unidade de pixel do MVR mínimo (por exemplo, 4 quando o MVR mínimo é um MVR de unidade de 1/4 de pixel).
[000426] Quando o MVR do bloco atual é maior que o MVR mínimo, o aparelho de decodificação de informações de movimento 2500 pode colocar em escala ampliada os dados de movimento residuais obtidos a partir do fluxo contínuo de dados como na Equação 5. [Equação 5] MVD'' = (MVD' < k)
[000427] Na Equação 5, MVD' denota a diferença do vetor de movimento reduzida em escala por um aparelho de codificação e MVD'' denota uma diferença do vetor de movimento em escala ampliada. k que é um valor determinado de acordo com uma diferença entre o MVR mínimo e o MVR do bloco atual é o mesmo que k na Equação 1.
[000428] Em uma modalidade, o aparelho de decodificação de informação de movimento 2500 pode determinar a diferença do vetor de movimento aumentado de acordo com a Equação 6, em vez da Equação
5. [Equação 6] MVD'' = MVD' * (R * S)
[000429] Na Equação 6, MVD' denota a diferença de vetor de movimento em escala reduzida e R indica o valor da unidade de pixel do MVR do bloco atual (por exemplo, 1/4 quando o MVR do bloco atual é um MVR de unidade de 1/4 de pixel). Além disso, S indica um valor recíproco de uma unidade de pixel do MVR mínimo (por exemplo, 4 quando o MVR mínimo é um MVR de unidade de 1/4 de pixel).
[000430] As modalidades podem ser implementadas como um programa executável por computador e o programa pode ser armazenado em um meio.
[000431] Omeio pode armazenar continuamente o programa executável por computador ou temporariamente o programa executável por computador para executar ou fazer o download do programa executável por computador. Além disso, o meio pode ser qualquer um dos vários meios de gravação ou armazenamento, incluindo um único hardware ou uma combinação de uma pluralidade de hardware, e pode ser distribuído em uma rede sem se limitar a um meio diretamente conectado a um sistema de computador. O meio pode ser configurado para armazenar instruções do programa, e exemplos do meio podem incluir um meio magnético, como um disco rígido, um disquete ou uma fita magnética, um meio de gravação óptico, como uma memória somente leitura de CD (CD -ROM) ou um disco versátil digital (DVD), um meio magneto-óptico, como um disco floptical, uma ROM, uma memória de acesso aleatório (RAM) e uma memória flash. Além disso, outros exemplos do meio podem incluir um meio de gravação e um meio de armazenamento gerenciado por uma loja de aplicativos que distribui aplicativos ou um site ou servidor que fornece ou distribui vários outros softwares.
[000432] Embora a presente divulgação tenha sido particularmente mostrada e descrita com referência a suas modalidades, será entendido por um versado na técnica que várias alterações na forma e nos detalhes podem ser feitas nela sem se afastar do espírito e do escopo da presente divulgação conforme definido pelas reivindicações anexas.

Claims (15)

- REIVINDICAÇÕES -
1. MÉTODO PARA DECODIFICAR INFORMAÇÕES DE MOVIMENTO, o método caracterizado por compreender: identificar um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade de informações de partes de movimento usadas para decodificar um bloco atual que é inter predito; obter as informações do movimento de omissão usando um método predeterminado; e decodificar o bloco atual com base na pluralidade de partes de informações de movimento que compreendem as informações de movimento de omissão obtidas.
2. Método, de acordo com a reivindicação 1, caracterizado por as informações de movimento de omissão serem obtidas com base em, ao mesmo tempo, determinar se existe informação de movimento de uma pluralidade de blocos candidatos relacionada espacial ou temporalmente ao bloco atual, de acordo com uma ordem de prioridade, informações de movimento de um bloco candidato cuja informação de movimento é primeiro determinada a existir.
3. Método, de acordo com a reivindicação 1, caracterizado por as informações de movimento de omissão serem obtidas pela combinação de partes de informações de movimento de uma pluralidade de blocos candidatos que possuem informações de movimento entre uma pluralidade de blocos candidatos espacial ou temporalmente relacionados ao bloco atual.
4. Método, de acordo com a reivindicação 1, caracterizado por as informações de movimento de omissão serem obtidas com base em informações de movimento de base predefinidas.
5. Método, de acordo com a reivindicação 1, caracterizado por as informações de movimento de omissão serem obtidas com base nas informações de movimento derivadas através da derivação do vetor de movimento lateral do decodificador (DMVD).
6. Método, de acordo com a reivindicação 1, caracterizado por quando há uma pluralidade de partes de informações de movimento de omissão, a obtenção das informações de movimento de omissão compreende a obtenção de cada uma da pluralidade de partes de informações de movimento de omissão usando métodos diferentes.
7. Método, de acordo com a reivindicação 1, caracterizado por o tipo de informações de movimento de omissão ser identificado com base em pelo menos uma de uma resolução de vetor de movimento do bloco atual, uma direção de previsão do bloco atual, informações sobre o bloco atual, informações sobre um bloco vizinho decodificado anteriormente e informações indicando um modo de omissão de informações de movimento.
8. Método, de acordo com a reivindicação 1, caracterizado por compreender ainda obter informações indicando se um processo de omissão de informações de movimento é aplicado, em que, quando é determinado que o processo de omissão de informações de movimento é aplicado, o tipo das informações de movimento de omissão é identificado.
9. Método, de acordo com a reivindicação 8, caracterizado por as informações indicando se o processo de omissão de informações de movimento é aplicado compreenderem pelo menos uma resolução de vetor de movimento do bloco atual, uma direção de previsão do bloco atual, informações sobre o bloco atual, informações sobre um bloco vizinho decodificado anteriormente e um sinalizador indicando se o processo de omissão de informações de movimento é aplicado.
10. Método, de acordo com a reivindicação 1, caracterizado por compreender ainda, quando o bloco atual é predito bidirecionalmente, obter informações indicando um modo de omissão de informações de movimento, em que o modo de omissão de informações de movimento compreende pelo menos um de um primeiro modo no qual uma diferença de vetor de movimento correspondente a uma primeira lista de imagens de referência é identificada como as informações de movimento de omissão e um segundo modo no qual uma diferença de vetor de movimento correspondente a uma segunda lista de imagens de referência é identificada como as informações de movimento de omissão.
11. Método, de acordo com a reivindicação 1, caracterizado por a pluralidade de partes de informações de movimento compreender informações sobre uma resolução de vetor de movimento do bloco atual e informações indicando um vetor de movimento de previsão, em que o método compreende ainda o ajuste do vetor de movimento de previsão de acordo com a resolução do vetor de movimento do bloco atual.
12. Método, de acordo com a reivindicação 1, caracterizado por compreender obter, a partir do fluxo contínuo de dados, informações de movimento que não sejam informações de movimento de omissão entre a pluralidade de partes de informações de movimento.
13. Método para decodificar informações de movimento, o método caracterizado por compreender: obter informações indicando um tipo de previsão bidirecional de um bloco atual que é predito bidirecionalmente; e decodificar o bloco atual usando informações de movimento que não sejam pelo menos uma de uma primeira diferença de vetor de movimento correspondente a uma primeira lista de imagens de referência e uma segunda diferença de vetor de movimento correspondente a uma segunda lista de imagens de referência entre uma pluralidade de informações de movimento relacionadas ao bloco atual, com base nas informações que indicam o tipo de previsão bidirecional.
14. APARELHO PARA DECODIFICAR INFORMAÇÕES DE MOVIMENTO, caracterizado por compreender: um identificador configurado para identificar um tipo de informação de movimento de omissão não incluída em um fluxo contínuo de dados entre uma pluralidade de partes de informações de movimento usadas para decodificar um bloco atual que é inter predito; e um decodificador configurado para obter as informações de movimento de omissão usando um método predeterminado e decodificar o bloco atual com base na pluralidade de partes de informações de movimento que compreendem as informações de movimento de omissão obtidas.
15. MÉTODO PARA CODIFICAR INFORMAÇÕES DE MOVIMENTO, o método caracterizado por compreender: determinar um tipo de informação de movimento de omissão a ser omitida de um fluxo contínuo de dados entre uma pluralidade de partes de informações de movimento usadas para decodificar um bloco atual que deve ser predito; obter as informações do movimento de omissão usando um método predeterminado; e gerar o fluxo contínuo de dados compreendendo informações de movimento diferentes das informações de movimento de omissão entre a pluralidade de partes de informações de movimento.
BR112020007550A 2017-11-09 2018-03-30 Método para decodificar informações de movimento, aparelho para decodificar informações de movimento, e método para codificar informações de movimento BR112020007550A8 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201762583739P 2017-11-09 2017-11-09
US62/583,739 2017-11-09
PCT/KR2018/003827 WO2019093598A1 (ko) 2017-11-09 2018-03-30 움직임 정보의 부호화 장치 및 방법, 및 복호화 장치 및 방법

Publications (2)

Publication Number Publication Date
BR112020007550A2 true BR112020007550A2 (pt) 2020-09-24
BR112020007550A8 BR112020007550A8 (pt) 2023-03-28

Family

ID=66438541

Family Applications (3)

Application Number Title Priority Date Filing Date
BR122022003522A BR122022003522A8 (pt) 2017-11-09 2018-03-30 Aparelho de decodificação de informações de movimento, e método para codificar informações de movimento
BR122022003520A BR122022003520A8 (pt) 2017-11-09 2018-03-30 Aparelho de decodificação de informações de movimento, e método para codificar informações de movimento
BR112020007550A BR112020007550A8 (pt) 2017-11-09 2018-03-30 Método para decodificar informações de movimento, aparelho para decodificar informações de movimento, e método para codificar informações de movimento

Family Applications Before (2)

Application Number Title Priority Date Filing Date
BR122022003522A BR122022003522A8 (pt) 2017-11-09 2018-03-30 Aparelho de decodificação de informações de movimento, e método para codificar informações de movimento
BR122022003520A BR122022003520A8 (pt) 2017-11-09 2018-03-30 Aparelho de decodificação de informações de movimento, e método para codificar informações de movimento

Country Status (6)

Country Link
US (2) US11265569B2 (pt)
EP (1) EP3709650A4 (pt)
KR (5) KR20230161531A (pt)
CN (2) CN114697680A (pt)
BR (3) BR122022003522A8 (pt)
WO (1) WO2019093598A1 (pt)

Families Citing this family (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109756739B (zh) * 2017-11-07 2022-09-02 华为技术有限公司 图像预测方法和装置
KR20230161531A (ko) * 2017-11-09 2023-11-27 삼성전자주식회사 움직임 정보의 부호화 장치 및 방법, 및 복호화 장치 및 방법
EP3895429A4 (en) * 2019-01-31 2022-08-10 Beijing Bytedance Network Technology Co., Ltd. CONTEXT FOR CODE AN ADAPTIVE MOTION VECTOR RESOLUTION IN AFFINE MODE
WO2020263038A1 (ko) * 2019-06-27 2020-12-30 삼성전자주식회사 비디오 복호화 방법 및 장치, 비디오 부호화 방법 및 장치
US11671616B2 (en) 2021-03-12 2023-06-06 Lemon Inc. Motion candidate derivation
US11936899B2 (en) * 2021-03-12 2024-03-19 Lemon Inc. Methods and systems for motion candidate derivation
WO2023132692A1 (ko) * 2022-01-09 2023-07-13 엘지전자 주식회사 영상 인코딩/디코딩 방법 및 장치, 그리고 비트스트림을 저장한 기록 매체

Family Cites Families (25)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
TW200843510A (en) * 2007-01-17 2008-11-01 Lg Electronics Inc Method and apparatus for processing a video signal
CN101415122B (zh) * 2007-10-15 2011-11-16 华为技术有限公司 一种帧间预测编解码方法及装置
KR101279573B1 (ko) 2008-10-31 2013-06-27 에스케이텔레콤 주식회사 움직임 벡터 부호화 방법 및 장치와 그를 이용한 영상 부호화/복호화 방법 및 장치
KR20110069740A (ko) * 2009-12-17 2011-06-23 에스케이 텔레콤주식회사 영상 부호화/복호화 방법 및 장치
KR101768207B1 (ko) * 2010-01-19 2017-08-16 삼성전자주식회사 축소된 예측 움직임 벡터의 후보들에 기초해 움직임 벡터를 부호화, 복호화하는 방법 및 장치
CN105744282B (zh) * 2010-05-26 2018-10-23 Lg电子株式会社 用于处理视频信号的方法和设备
HUE055116T2 (hu) * 2010-09-02 2021-10-28 Lg Electronics Inc Videó kódolási és dekódolási eljárás
US8787459B2 (en) * 2010-11-09 2014-07-22 Sony Computer Entertainment Inc. Video coding methods and apparatus
KR101478959B1 (ko) * 2010-11-25 2015-01-06 엘지전자 주식회사 영상 정보의 시그널링 방법 및 이를 이용한 영상 정보의 복호화 방법
US9319716B2 (en) * 2011-01-27 2016-04-19 Qualcomm Incorporated Performing motion vector prediction for video coding
KR20130002242A (ko) * 2011-06-28 2013-01-07 주식회사 케이티 영상 정보의 부호화 방법 및 복호화 방법
EP3487178A1 (en) * 2011-08-03 2019-05-22 Sun Patent Trust Video encoding method, video encoding apparatus, video decoding method, video decoding apparatus, and video encoding/decoding apparatus
KR101830352B1 (ko) * 2011-11-09 2018-02-21 에스케이 텔레콤주식회사 스킵모드를 이용한 동영상 부호화 및 복호화 방법 및 장치
JP2013132046A (ja) * 2011-11-21 2013-07-04 Jvc Kenwood Corp 動画像復号装置、動画像復号方法、動画像復号プログラム、受信装置、受信方法、及び受信プログラム
US20130170553A1 (en) * 2012-01-04 2013-07-04 Qualcomm Incorporated Coding motion vector difference
KR101615507B1 (ko) 2013-05-15 2016-04-26 주식회사 칩스앤미디어 움직임 정보를 이용한 해상도 변환 방법 및 그 장치
GB2524476B (en) * 2014-03-14 2016-04-27 Canon Kk Method, device and computer program for optimizing transmission of motion vector related information when transmitting a video stream
KR20170078672A (ko) 2014-10-31 2017-07-07 삼성전자주식회사 고정밀 스킵 부호화를 이용한 비디오 부호화 장치 및 비디오 복호화 장치 및 그 방법
EP3202143B8 (en) 2014-11-18 2019-09-25 MediaTek Inc. Method of bi-prediction video coding based on motion vectors from uni-prediction and merge candidate
US10200711B2 (en) * 2015-03-27 2019-02-05 Qualcomm Incorporated Motion vector derivation in video coding
WO2018062950A1 (ko) * 2016-09-30 2018-04-05 엘지전자(주) 영상 처리 방법 및 이를 위한 장치
CN117221573A (zh) * 2016-10-04 2023-12-12 英迪股份有限公司 图像解码方法、图像编码方法以及发送比特流的方法
CN116866553A (zh) * 2017-01-16 2023-10-10 世宗大学校产学协力团 影像解码/编码方法以及传送比特流的方法
US10602180B2 (en) * 2017-06-13 2020-03-24 Qualcomm Incorporated Motion vector prediction
KR20230161531A (ko) * 2017-11-09 2023-11-27 삼성전자주식회사 움직임 정보의 부호화 장치 및 방법, 및 복호화 장치 및 방법

Also Published As

Publication number Publication date
CN111386705A (zh) 2020-07-07
EP3709650A4 (en) 2021-07-14
BR122022003521A2 (pt) 2020-09-24
KR20200130877A (ko) 2020-11-20
WO2019093598A1 (ko) 2019-05-16
EP3709650A1 (en) 2020-09-16
KR102180482B1 (ko) 2020-11-18
BR122022003520A2 (pt) 2020-09-24
BR122022003518A8 (pt) 2023-03-28
KR20200032225A (ko) 2020-03-25
BR122022003521A8 (pt) 2023-03-28
BR112020007550A8 (pt) 2023-03-28
BR122022003522A8 (pt) 2023-03-28
BR122022003520A8 (pt) 2023-03-28
KR20220025270A (ko) 2022-03-03
BR122022003522A2 (pt) 2020-09-24
US11265569B2 (en) 2022-03-01
BR122022003518A2 (pt) 2020-09-24
KR102366261B1 (ko) 2022-02-23
CN114697680A (zh) 2022-07-01
KR20230161531A (ko) 2023-11-27
US11973972B2 (en) 2024-04-30
US20200351513A1 (en) 2020-11-05
KR102604775B1 (ko) 2023-11-21
KR20230006052A (ko) 2023-01-10
US20220150531A1 (en) 2022-05-12
KR102483331B1 (ko) 2022-12-30

Similar Documents

Publication Publication Date Title
BR112020007550A2 (pt) método para decodificar informações de movimento, aparelho para decodificar informações de movimento, e método para codificar informações de movimento
KR102206084B1 (ko) 적응적 움직임 벡터 해상도로 결정된 움직임 벡터의 부호화 장치 및 부호화 방법, 및 움직임 벡터의 복호화 장치 및 복호화 방법
BR122022004561B1 (pt) Método de decodificação de vídeo, aparelho de decodificação de vídeo, método de codificação de vídeo, e aparelho de codificação de vídeo
JP2022110094A (ja) 候補リスト共有方法及びこのような方法を使用する装置
BR112020001881A2 (pt) método para decodificar informações de movimento, e método para codificar informações de movimento
EP3866470A1 (en) Method for encoding and decoding video by using motion vector differential value, and apparatus for encoding and decoding motion information
BR112013018993B1 (pt) Método de derivação de candidato de mesclagem
BR112013022641B1 (pt) Método para derivar um vetor de predição de movimento candidato
KR102349457B1 (ko) 움직임 벡터 차분의 부호화 방법 및 부호화 장치, 및 움직임 벡터 차분의 복호화 방법 및 복호화 장치
KR102285739B1 (ko) 움직임 벡터 해상도에 기초하여 영상을 부호화하는 장치 및 방법, 및 복호화 장치 및 방법
CN111108750A (zh) 用于对运动信息进行编码和解码的方法以及用于对运动信息进行编码和解码的设备
EP3637773A1 (en) Apparatus and method for encoding motion vector by using basic motion vector, and decoding apparatus and method
CN112703731A (zh) 基于子块对图像进行编码的方法和装置以及对图像进行解码的方法和装置
WO2020049512A1 (en) Two-step inter prediction
BR122022003518B1 (pt) Método para decodificar informações de movimento, e método para codificar informações de movimento
BR122022003521B1 (pt) Método para decodificar informações de movimento, e método para codificar informações de movimento
KR102357294B1 (ko) 움직임 벡터를 획득하기 위한 비디오 복호화 방법 및 장치, 움직임 벡터를 획득하기 위한 비디오 부호화 방법 및 장치

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: AS CLASSIFICACOES ANTERIORES ERAM: H04N 19/51 , H04N 19/44 , H04N 19/176

Ipc: H04N 19/109 (2014.01), H04N 19/176 (2014.01), H04N

B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 30/03/2018, OBSERVADAS AS CONDICOES LEGAIS