BR112015030508B1 - Dispositivos e métodos de codificação de imagem e de decodificação de imagem - Google Patents

Dispositivos e métodos de codificação de imagem e de decodificação de imagem Download PDF

Info

Publication number
BR112015030508B1
BR112015030508B1 BR112015030508-3A BR112015030508A BR112015030508B1 BR 112015030508 B1 BR112015030508 B1 BR 112015030508B1 BR 112015030508 A BR112015030508 A BR 112015030508A BR 112015030508 B1 BR112015030508 B1 BR 112015030508B1
Authority
BR
Brazil
Prior art keywords
field
image
prediction
coding
block
Prior art date
Application number
BR112015030508-3A
Other languages
English (en)
Other versions
BR112015030508A2 (pt
Inventor
Yoshimi Moriya
Akira Minezawa
Shunichi Sekiguchi
Ryoji Hattori
Kazuyuki Miyazawa
Original Assignee
Mitsubishi Electric Corporation
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 Mitsubishi Electric Corporation filed Critical Mitsubishi Electric Corporation
Publication of BR112015030508A2 publication Critical patent/BR112015030508A2/pt
Publication of BR112015030508B1 publication Critical patent/BR112015030508B1/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/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/107Selection of coding mode or of prediction mode between spatial and temporal predictive coding, e.g. picture refresh
    • 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/114Adapting the group of pictures [GOP] structure, e.g. number of B-frames between two anchor frames
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/16Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter for a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)

Abstract

dispositivo e método de codificação de imagem. a fim de resolver um problema no qual processamento de exibição se torna complicado em um dispositivo de exibição, um dispositivo de codificação de imagem é provido com: um meio de codificação que codifica um primeiro campo de um quadro específico como uma intraimagem parada que é prevista usando apenas intraprevisão, e que codifica o primeiro campo do quadro específico, um segundo campo do quadro específico, uma imagem parada que é codificada depois do primeiro campo do quadro específico e exibida antes do primeiro campo do quadro específico, e uma imagem parada que é codificada e exibida depois do primeiro campo do quadro específico nesta ordem; e um meio de multiplexação que multiplexa um fluxo contínuo de bits com informação que indica que o primeiro campo do quadro específico é uma imagem parada que torna possível iniciar a decodificação a partir de um ponto intermediário no fluxo contínuo de bits.

Description

CAMPO
[001] A presente invenção refere-se a um dispositivo de codificação de imagem para, e um método de codificação de imagem para realizar codificação com um alto grau de eficiência, e a um dispositivo de decodificação de imagem e um método de decodificação de imagem.
FUNDAMENTOS
[002] Por exemplo, em um dispositivo de codificação de imagem convencional descrito na seguinte referência não patente 1, uma imagem a cores inserida é particionada em maiores blocos de codificação, cada qual com um tamanho predeterminado, e cada maior bloco de codificação é adicionalmente particionado hierarquicamente em menores blocos de codificação.
[003] Cada bloco de codificação é adicionalmente particionado em menores blocos de previsão, e uma previsão intratela e uma previsão com movimento compensado são realizadas em cada um dos blocos de previsão para gerar um erro de previsão.
[004] Adicionalmente, o erro de previsão é dividido hierarquicamente em blocos de transformação em cada bloco de codificação, e cada um dos coeficientes de transformada é codificado com entropia, desse modo, alcançando uma alta razão de compressão.
[005] A fim de implementar eficiente codificação que usa uma correlação temporal em um dispositivo de codificação de imagem convencional, um bloco que tem uma alta correlação com um bloco alvo de codificação é buscado a partir de uma imagem parada já codificada com base em, por exemplo, uma configuração de codificação, da forma mostrada na figura 37, e codificação que usa uma previsão com movimento compensado que provê o bloco que é buscado como um valor previsto é implementada. No geral, a imagem parada através da qual a busca (referência) é realizada neste momento é referida como uma imagem parada de referência. Particularmente, é conhecido que uma previsão bidirecional que é compensação de movimento que se refere tanto a uma imagem parada passada quanto a uma imagem parada futura na ordem de exibição, da forma mostrada na figura 37, pode implementar uma previsão de alta precisão. Entretanto, a provisão de uma relação de referência entre imagens paradas desta maneira resulta na dependência que ocorre na decodificação de cada imagem parada e, em decorrência disto, uma reprodução parcial de uma sequência, esta reprodução que decodifica um fluxo contínuo de bits codificado a partir de algum ponto deste fluxo contínuo de bits, não pode ser implementada.
[006] Portanto, durante o uso da configuração de codificação que usa uma previsão bidirecional com movimento compensado, da forma mostrada na figura 37, há um caso de preparação de um ponto de acesso aleatório no qual se torna possível realizar corretamente uma reprodução mesmo se o fluxo contínuo de bits codificado for decodificado a partir de algum ponto do fluxo contínuo de bits. Por exemplo, é examinado um caso no qual uma imagem parada cinza (sombreada) que tem um número de 8 na ordem de exibição da figura 37 (que tem um número de 1 na ordem de decodificação (codificação)) é definida como uma imagem parada que é descrita na referência não patente 1 e pode ser acessada aleatoriamente (imagem parada com Ponto de Acesso Intra-Aleatório (IRAP) descrita na referência não patente 1). Na referência não patente 1, uma imagem parada cuja ordem de decodificação (ordem de decodificação em um dispositivo de decodificação, e esta ordem de decodificação tem o mesmo significado da ordem de codificação em um dispositivo de codificação) é posterior àquela de uma imagem parada IRAP e cuja ordem de exibição é anterior àquela da imagem parada IRAP (cada uma das imagens paradas que têm números 1 a 7 na ordem de exibição da figura 37) é definida como uma "imagem parada primária", e uma imagem parada cuja ordem de decodificação e ordem de exibição são posteriores àquelas da imagem parada IRAP (cada uma das imagens paradas que têm números 9 a 16 na ordem de exibição da figura 37) é definida como uma "imagem parada secundária". Quando a imagem parada cinza (sombreada) que tem um número de 8 na ordem de exibição da figura 37 (que tem um número de 1 na ordem de decodificação (codificação)) for uma imagem parada CRA (Acesso Aleatório Limpo), que é um tipo de uma imagem parada IRAP, não há garantia de que as imagens paradas primárias possam ser decodificadas corretamente quando a decodificação for iniciada a partir da imagem parada CRA, mas as imagens paradas secundárias podem ser decodificadas corretamente em todos os momentos. Limitações impostas em cada imagem parada associada são definidas de forma que esta operação seja garantida. Concretamente, no dispositivo de codificação de imagem descrito na referência não patente 1, o uso de cada imagem parada primária como uma imagem parada de referência de uma imagem parada secundária é proibido, ao mesmo tempo em que a existência de uma imagem parada cuja ordem de exibição é posterior àquela de uma imagem parada IRAP e cuja ordem de decodificação é anterior àquela da imagem parada IRAP também é proibida. Além do mais, na referência não patente 1, é definido que cada imagem parada primária deve ser decodificada (codificada) antes das imagens paradas secundárias. Sob uma definição como esta, também, durante o início da decodificação em algum ponto do fluxo contínuo de bits codificado, pelo uso de uma imagem parada CRA, uma imagem parada cuja ordem de exibição é posterior àquela da imagem parada CRA pode ser sempre decodificada corretamente pelo início da decodificação da imagem parada CRA, e uma reprodução parcial da sequência codificada pode ser implementada.
[007] Adicionalmente, em virtude de apenas ser garantido que as imagens paradas secundárias podem ser decodificadas corretamente no caso em que a imagem parada for uma imagem parada CRA, as imagens paradas primárias tornam possível realizar uma previsão bidirecional que também inclui a imagem parada CRA, e uma redução da eficiência de codificação que é causada pela inserção da imagem parada que pode ser acessada aleatoriamente pode ser reduzida. DOCUMENTO DA TÉCNICA RELACIONADA REFERÊNCIA NÃO PATENTE Referência Não Patente 1: B. Bross, W.-J. B. Bross, W.-J. Han, J.-R. Ohm, G. J. Sullivan, Y.-K. Wang and T. Wiegand, "High Efficiency Video Coding (HEVC) text specification draft 10 (for FDIS & Consent)", doc. JCTVC-L1003, Joint Collaborative Team on Video Coding (JCT-VC) of ITU- T SG16 WP3 and ISO/IEC JTC1/SC29/WG11, 12th Meeting, 2013
SUMÁRIO DA INVENÇÃO PROBLEMAS A SEREM RESOLVIDOS PELA INVENÇÃO
[008] Em virtude de o dispositivo de codificação de imagem convencional ser construído como exposto, no caso de um vídeo progressivo no qual cada quadro consiste em uma imagem parada, pelo início da decodificação a partir de uma imagem parada específica mesmo a partir de algum ponto médio em um fluxo contínuo de bits codificado, um acesso aleatório que torna possível decodificar corretamente imagens paradas depois da imagem parada na ordem de exibição pode ser implementado. Por outro lado, no caso de um vídeo entrelaçado no qual cada quadro consiste em dois campos: um campo de topo e um campo de base, há um caso de realização da codificação com a configuração do par de campos sendo provida como uma configuração de referência, cada quadro que consiste em dois campos sendo levado em consideração na configuração do par de campos, durante a definição de cada um destes campos como uma imagem parada que é uma unidade de codificação. Um exemplo da configuração do par de campos que usa uma previsão bidirecional é mostrado na figura 33. Neste exemplo, quando se tentar que um campo de topo mostrado por uma caixa cinza que tem um número de 32 na ordem de exibição da figura 33 (um número de 18 na ordem de decodificação (codificação)) seja definido como uma imagem parada que pode ser acessada aleatoriamente, em virtude de uma parte das imagens paradas que são imagens paradas primárias se referir tanto ao campo de topo que tem um número de 32 na ordem de exibição e ao campo de base que tem um número de 33 na ordem de exibição, a ordem de decodificação deve ser aquela na qual, imediatamente depois de o campo de topo que tem um número de 32 na ordem de exibição ser decodificado, o campo de base que tem um número de 33 na ordem de exibição que é uma imagem parada secundária é decodificado e, depois disto, imagens paradas primárias são decodificadas. Entretanto, de acordo com a definição descrita na referência não patente 1 e que indica que imagens paradas primárias devem ser decodificadas (codificadas) à frente de imagens paradas secundárias, o campo de topo que tem um número de 32 na ordem de exibição não pode ser definido como uma imagem parada CRA. Em outras palavras, em virtude de, imediatamente depois de o campo de topo que tem um número de 32 na ordem de exibição definida ser decodificado como uma imagem parada CRA, o campo de base que tem um número de 33 na ordem de exibição que é uma imagem parada secundária não poder ser decodificado quando a decodificação for realizada de acordo com a definição descrita na referência não patente 1 e que indica que imagens paradas primárias devem ser decodificadas (codificadas) à frente de imagens paradas secundárias, a configuração de referência da figura 33 não pode ser provida. Portanto, quando for o momento de implementar acesso aleatório usando uma imagem parada CRA nos limites da definição descrita na referência não patente 1, por exemplo, a configuração de referência é trocada para aquela na qual cada imagem parada primária não refere-se ao campo de base que tem um número de 33 na ordem de exibição, embora seja necessário modificar a configuração de uma maneira tal que o campo de base que tem um número de 33 na ordem de exibição seja decodificado depois que as imagens paradas primárias forem decodificadas, e define o campo de base que tem um número de 33 na ordem de exibição como uma imagem parada CRA. Um problema com o primeiro caso é, portanto, que, em virtude de a imagem parada de referência de cada imagem parada primária ser limitada, se comparada com a configuração de referência da figura 33, a eficiência de previsão degrada. No último caso, durante a realização de uma reprodução a partir do início do fluxo contínuo de bits codificado, o vídeo é reproduzido a partir do campo de topo e, durante a realização de uma reprodução a partir de algum ponto médio no fluxo contínuo de bits codificado, o vídeo é reproduzido a partir do campo de base. Mais especificamente, um problema é que a decodificação não pode ser realizada em todos os momentos a partir do mesmo campo independente da posição de início da decodificação do fluxo contínuo de bits codificado, e é exigido que o dispositivo de exibição esteja pronto para uma reprodução como esta e, portanto, o processo de exibição se torna complicado.
[009] A presente invenção é feita a fim de resolver os supramencionados problemas e, portanto, é um objetivo da presente invenção prover um dispositivo de codificação de imagem, um método de codificação de imagem, um dispositivo de decodificação de imagem e um método de decodificação de imagem que tornam possível gerar e codificar um fluxo contínuo de bits codificado que pode ser reproduzido em todos os momentos a partir do mesmo campo independente da posição de início da decodificação do fluxo contínuo de bits codificado também na codificação do par de campos de um vídeo entrelaçado.
MEIO PARA RESOLVER OS PROBLEMAS
[0010] De acordo com a presente invenção, é provido um dispositivo de codificação de imagem que codifica cada campo como uma imagem parada, cada quadro consistindo em dois campos: um primeiro campo e um segundo campo, o dispositivo de codificação de imagem incluindo: um codificador que codifica um primeiro campo de um quadro específico como uma intraimagem parada que é prevista pelo uso apenas de uma intraprevisão, e que codifica o primeiro campo do supradescrito quadro específico, o segundo campo do supradescrito quadro específico, uma imagem parada cuja ordem de codificação é posterior àquela do primeiro campo do supradescrito quadro específico posterior e cuja ordem de exibição é anterior àquela do primeiro campo, e uma outra imagem parada cuja ordem de codificação e, também, a ordem de exibição são posteriores àquelas do primeiro campo do supradescrito quadro específico na ordem destas imagens paradas; e um multiplexador que multiplexa informação que mostra que o primeiro campo do supradescrito quadro específico é uma imagem parada, em um fluxo contínuo de bits, na qual decodificação pode ser iniciada no supradescrito fluxo contínuo de bits.
VANTAGENS DA INVENÇÃO
[0011] De acordo com a presente invenção, em virtude de o dispositivo de codificação de imagem ser configurado de uma maneira tal para gerar um fluxo contínuo de bits codificado que pode ser corretamente reproduzido a partir do mesmo campo em todos os momentos independente da posição de início da decodificação do fluxo contínuo de bits codificado também na codificação do par de campos de um vídeo entrelaçado, um dispositivo de exibição que exibe a imagem decodificada apenas precisa ser configurado de uma maneira tal para sempre exibir o mesmo campo primeiro independente da posição de início da decodificação do fluxo contínuo de bits codificado também na codificação do par de campos de um vídeo entrelaçado, e é provida uma vantagem de ser capaz de facilmente realizar o processo de exibição. Breve Descrição das Figuras A figura 1 é um diagrama de blocos que mostra um dispositivo de codificação de imagem de acordo com a modalidade 1 da presente invenção; A figura 2 é um fluxograma que mostra o processamento (método de codificação de imagem) realizado pelo dispositivo de codificação de imagem de acordo com a modalidade 1 da presente invenção; A figura 3 é um diagrama de blocos que mostra um dispositivo de decodificação de imagem de acordo com a modalidade 1 da presente invenção; A figura 4 é um fluxograma que mostra o processamento (método de decodificação de imagem) realizado pelo dispositivo de decodificação de imagem de acordo com a modalidade 1 da presente invenção; A figura 5 é um desenho explicativo que mostra um exemplo no qual cada maior bloco de codificação é particionado hierarquicamente em uma pluralidade de blocos de codificação; A figura 6(a) é um desenho explicativo que mostra a distribuição de blocos de codificação e blocos de previsão depois do particionamento, e a figura 6(b) é um desenho explicativo que mostra um estado no qual um modo de codificação m(Bn) é atribuído a cada um dos blocos através do particionamento de camada hierárquica; A figura 7 é um desenho explicativo que mostra um exemplo de um modo de intraprevisão que pode ser selecionado para cada bloco de previsão Pin em um bloco de codificação Bn; A figura 8 é um desenho explicativo que mostra um exemplo de pixels que são usados durante a geração de um valor previsto de cada pixel em um bloco de geração da imagem de previsão no caso de lin = min = 4; A figura 9 é um desenho explicativo que mostra coordenadas relativas de cada pixel no bloco de geração da imagem de previsão que são determinadas com o pixel no canto superior esquerdo do bloco de geração da imagem de previsão que é definido como o ponto de origem; A figura 10 é um desenho explicativo que mostra um exemplo de uma matriz de quantização; A figura 11 é um desenho explicativo que mostra um exemplo de uma configuração de uso de uma pluralidade de processos de filtragem em malha em uma unidade de filtro em malha do dispositivo de codificação de imagem de acordo com a modalidade 1 da presente invenção; A figura 12 é um desenho explicativo que mostra um exemplo da configuração de uso de uma pluralidade de processos de filtragem em malha na unidade de filtro em malha do dispositivo de codificação de imagem de acordo com a modalidade 1 da presente invenção; A figura 13 é um desenho explicativo que mostra um exemplo de um fluxo contínuo de bits codificado; A figura 14 é um desenho explicativo que mostra índices que indicam métodos de classificação de classe para uso no processo de deslocamento adaptativo de pixel; A figura 15 é um desenho explicativo que mostra a ordem de codificação de coeficientes de transformada na transformação ortogonal em um tamanho de 16 x 16 pixels; A figura 16 é um desenho explicativo que mostra um exemplo da distribuição de coeficientes de transformada na transformação ortogonal em um tamanho de 16 x 16 pixels; A figura 17 é um desenho explicativo que mostra regiões para as quais comutação de filtros é realizada em um processo de filtragem no momento de uma previsão de valor médio; A figura 18 é um desenho explicativo que mostra o arranjo de pixels de referência no processo de filtragem no momento da previsão de valor médio; A figura 19 é um desenho explicativo que mostra um processo de filtragem em uma imagem de intraprevisão no momento da codificação de campo; A figura 20 é um desenho explicativo que mostra um tamanho do bloco de transformação no momento da realização de um processo de compressão no sinal de luminância e nos sinais de diferença de cor em um sinal no formato YUV4:2:0; A figura 21 é um desenho explicativo que mostra um tamanho do bloco de transformação no momento da realização de um processo de compressão no sinal de luminância e nos sinais de diferença de cor em um sinal no formato YUV4:2:2; A figura 22 é um desenho explicativo que mostra um tamanho do bloco de transformação no momento da realização de um processo de compressão no sinal de luminância e nos sinais de diferença de cor em um sinal no formato YUV4:2:4; A figura 23 é um desenho explicativo que mostra um exemplo de uma correspondência entre um parâmetro de intraprevisão e um modo de intraprevisão da diferença de cor dos sinais de diferença de cor; A figura 24 é um desenho explicativo que mostra um exemplo da correspondência entre o parâmetro de intraprevisão e o modo de intraprevisão da diferença de cor dos sinais de diferença de cor durante o não uso de um modo LM; A figura 25 é um desenho explicativo que mostra um caso de uso da mesma previsão direcional para o sinal de luminância e os sinais de diferença de cor em um sinal no formato YUV4:2:0; A figura 26 é um desenho explicativo que mostra um caso de uso da mesma previsão direcional para o sinal de luminância e os sinais de diferença de cor em um sinal no formato YUV4:2:2; A figura 27 é um desenho explicativo que mostra uma relação entre o formato YUV4:4:4 e o formato YUV4:2:2; A figura 28 é um desenho explicativo que mostra um exemplo de uma previsão direcional no formato YUV4:2:2 que é equivalente ao uso da mesma previsão direcional para o sinal de luminância e os sinais de diferença de cor em um sinal no formato YUV4:4:4; A figura 29 é um desenho explicativo que mostra um vetor da direção da previsão para a previsão direcional em um sinal no formato YUV4:2:2; A figura 30 é um desenho explicativo que mostra uma relação entre a previsão direcional e um ângulo; A figura 31 é um desenho explicativo que mostra uma relação entre um índice do modo de intraprevisão do sinal de luminância e um índice do modo de intraprevisão dos sinais de diferença de cor em um sinal no formato YUV4:2:2; A figura 32 é um desenho explicativo que mostra uma relação entre o índice do modo de intraprevisão e tanθ; A figura 33 é um desenho explicativo que mostra um exemplo de uma configuração de codificação que usa uma previsão bidirecional na codificação do par de campos de um sinal entrelaçado; A figura 34 é um desenho explicativo que mostra um exemplo da configuração de codificação que usa a previsão bidirecional na codificação do par de campos de um sinal entrelaçado; A figura 35 é um desenho explicativo que mostra um exemplo da configuração de codificação que usa a previsão bidirecional na codificação do par de campos de um sinal entrelaçado; A figura 36 é um desenho explicativo que mostra um exemplo da configuração de codificação que usa a previsão bidirecional na codificação do par de campos de um sinal entrelaçado; A figura 37 é um desenho explicativo que mostra um exemplo da configuração de codificação que usa a previsão bidirecional; e A figura 38 é um desenho explicativo que mostra uma sintaxe de Mensagem SEI do Ponto de Recuperação.
MODALIDADES DA INVENÇÃO Modalidade 1
[0012] A figura 1 é um diagrama de blocos que mostra um dispositivo de codificação de imagem de acordo com a modalidade 1 da presente invenção.
[0013] Um sinal de vídeo a ser processado pelo dispositivo de codificação de imagem de acordo com esta modalidade 1 é um sinal de vídeo arbitrário no qual cada quadro de vídeo consiste em uma série de amostras digitais (pixels) em duas dimensões, horizontal e vertical, incluindo um sinal de vídeo em cores em espaço de cor arbitrário, tais como um sinal YUV que consiste em um sinal de luminância e dois sinais de diferença de cor e um sinal RGB transmitido a partir de um sensor de imagem digital, um sinal de imagem monocromática, um sinal de imagem infravermelha e congêneres.
[0014] A gradação de cada pixel pode ser um uma de 8 bits, 10 bits, ou 12 bits.
[0015] Certamente, o sinal de entrada pode ser um sinal de imagem estática, em vez de um sinal de vídeo, em virtude de o sinal de imagem estática poder ser considerado como um sinal de vídeo que consiste apenas em um único quadro.
[0016] Na seguinte explicação, a título de conveniência, o sinal de vídeo inserido é considerado como, a menos que de outra forma especificado, um sinal que tem uma formato YUV4:2:0 no qual os dois componentes de diferença de cor U e V são subamostrados em um fator de dois nas direções tanto vertical quanto horizontal em relação ao componente de luminância Y, um sinal que tem uma formato YUV4:2:2 no qual os dois componentes de diferença de cor U e V são subamostrados em um fator de dois na direção horizontal em relação ao componente de luminância Y, ou um sinal que tem uma formato YUV4:4:4 no qual os dois componentes de diferença de cor U e V têm o mesmo número de amostras do componente de luminância Y. Adicionalmente, quanto a um sinal que tem uma formato RGB4:4:4 que consiste em sinais tricromáticos de vermelho (R), verde (G) e azul (B), cada um dos sinais é considerado como um sinal que tem o formato YUV4:4:4, e a mesma codificação do formato YUV4:4:4 é realizada no sinal. Entretanto, como cada sinal (RGB) que tem o formato RGB4:4:4 é levado à correspondência com cada sinal (YUV) que tem o formato YUV4:4:4 não é limitado (pode ser definido arbitrariamente). Adicionalmente, no caso de um sinal no formato YUV4:4:4 ou um sinal no formato RGB4:4:4, cada sinal pode ser considerado como um sinal de imagem monocromática, e codificação monocromática (YUV4:0:0) pode ser realizada independentemente em cada sinal para gerar um fluxo contínuo de bits. Fazendo desta maneira, o processo de codificação pode ser realizado nos sinais em paralelo.
[0017] Uma unidade de dados a ser processada que corresponde a cada quadro do vídeo é referida como uma "imagem parada", e uma explicação será feita nesta Modalidade 1 pela consideração que uma "imagem parada" é um sinal de um quadro de imagem no qual escaneamento progressivo é realizado. Entretanto, quando o sinal de vídeo for um sinal entrelaçado, uma "imagem parada" pode ser um sinal da imagem do campo que é uma unidade que constrói um quadro de imagem.
[0018] Em relação à figura 1, uma unidade de particionamento de fatia 14 realiza um processo de, durante a recepção de um sinal de vídeo como uma imagem inserida, particionamento da imagem inserida em uma ou mais imagens parciais, que são chamadas de "fatias", de acordo com informação de particionamento de fatia determinada por uma unidade de controle de codificação 2. Cada fatia particionada pode ser particionada até em blocos de codificação que serão mencionados a seguir.
[0019] Uma unidade de particionamento de bloco 1 realiza um processo de, toda vez durante a recepção de uma fatia particionada pela unidade de particionamento de fatia 14, particionamento da fatia em maiores blocos de codificação, cada um dos quais sendo um bloco de codificação que tem um maior tamanho determinado pela unidade de controle de codificação 2, e particionamento adicional de cada um dos maiores blocos de codificação em blocos de codificação hierarquicamente até que o número de camadas hierárquicas alcance um limite superior determinado pela unidade de controle de codificação 2.
[0020] Mais especificamente, a unidade de particionamento de bloco 1 realiza um processo de particionamento da fatia em blocos de codificação de acordo com a partição determinada pela unidade de controle de codificação 2 e emissão dos blocos de codificação. Cada um dos blocos de codificação é adicionalmente particionado em um ou mais blocos de previsão, cada um dos quais serve como uma unidade para o processo de previsão.
[0021] A unidade de controle de codificação 2 realiza um processo de determinação do maior tamanho dos blocos de codificação que servem como unidades a serem processadas quando um processo de codificação for realizado e, também, determinação do tamanho de cada bloco de codificação pela determinação do limite superior no número de camadas hierárquicas no momento em que cada bloco de codificação que tem o maior tamanho for hierarquicamente particionado.
[0022] A unidade de controle de codificação 2 também realiza um processo de seleção de um modo de codificação que é aplicado em um bloco de codificação transmitido a partir da unidade de particionamento de bloco 1, dentre um ou mais modos de codificação selecionáveis (um ou mais modos de intracodificação nos quais o tamanho ou congêneres de um bloco de previsão que representa uma unidade para o processo de previsão diferem e um ou mais modos de intercodificação nos quais o tamanho ou congêneres de um bloco de previsão diferem). Como um exemplo de métodos de seleção, há um método de seleção de um modo de codificação que provê o mais alto grau de eficiência de codificação para um bloco de codificação transmitido a partir da unidade de particionamento de bloco 1, dentre os um ou mais modos de codificação selecionáveis.
[0023] A unidade de controle de codificação 2 também realiza um processo de, quando um modo de codificação que tem o mais alto grau de eficiência de codificação for um modo de intracodificação, determinação de um parâmetro de intraprevisão a ser usado durante a realização de um processo de intraprevisão em um bloco de codificação no modo de intracodificação, para cada bloco de previsão que é uma unidade para o processo de previsão mostrado pelo supradescrito modo de intracodificação e, quando o modo de codificação que tem o mais alto grau de eficiência de codificação for um modo de intercodificação, determinação de um parâmetro de interprevisão a ser usado durante a realização de um processo de interprevisão em um bloco de codificação no modo de intercodificação, para cada bloco de previsão que é uma unidade para o processo de previsão mostrado pelo supradescrito modo de intercodificação.
[0024] A unidade de controle de codificação 2 adicionalmente realiza um processo de determinação dos parâmetros de codificação da diferença de previsão a serem providos para uma unidade de transformação / quantização 7 e uma unidade de quantização inversa / transformação inversa 8. Os parâmetros de codificação da diferença de previsão incluem informação de particionamento do bloco de transformação que mostra informação de particionamento sobre blocos de transformação, cada qual servindo como uma unidade para processo de transformação ortogonal em um bloco de codificação e um parâmetro de quantização que define um tamanho da etapa de quantização no momento durante a realização da quantização em coeficientes de transformada, etc.
[0025] A figura 20 é um desenho explicativo que mostra tamanhos do bloco de transformação no momento da realização de um processo de compressão (um processo de transformação e um processo de quantização) no sinal de luminância e nos sinais de diferença de cor em um sinal que tem o formato YUV4:2:0.
[0026] Os tamanhos do bloco de transformação são determinados pelo particionamento hierárquico de cada bloco de codificação em blocos em forma de árvore quaternária, da forma mostrada na figura 20.
[0027] Por exemplo, pela determinação se particiona ou não cada bloco de transformação com base na quantidade de código no caso de particionamento do bloco de transformação, na quantidade de código no caso de não particionamento do bloco de transformação e em um critério de avaliação que leva em consideração erros de codificação, etc. de uma maneira tal que um valor avaliado seja minimizado, uma forma particionada ideal do bloco de transformação pode ser determinada a partir do ponto de vista de uma proporcionalidade entre a quantidade de código e os erros de codificação.
[0028] O sinal de luminância é configurado, da forma mostrada, por exemplo, na figura 20, de uma maneira tal que cada bloco de codificação seja hierarquicamente particionado em um ou mais blocos de transformação quadrados.
[0029] Os sinais de diferença de cor são configurados, da forma mostrada na figura 20, de uma maneira tal que, quando o formato do sinal de entrada for o formato do sinal YUV4:2:0, cada bloco de codificação seja hierarquicamente particionado em um ou mais blocos de transformação quadrados, como o sinal de luminância.
[0030] Neste caso, o tamanho do bloco de transformação dos sinais de diferença de cor é metade daquele do correspondente bloco do sinal de luminância nas direções tanto vertical quanto horizontal.
[0031] Da forma mostrada na figura 21, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, o mesmo particionamento hierárquico em blocos em forma de árvore quaternária que aquele no sinal de luminância é realizado. Adicionalmente, em virtude de a forma de cada bloco particionado ser um retângulo no qual o número de pixels na direção vertical é duas vezes maior que o número de pixels na direção horizontal, pelo particionamento de cada bloco particionado em dois blocos na direção vertical, cada bloco particionado é feito para consistir em dois blocos de transformação que têm o mesmo tamanho de bloco que os sinais de diferença de cor em um sinal YUV4:2:0 (um tamanho que é metade do tamanho nas direções tanto vertical quanto horizontal do bloco de transformação do sinal de luminância).
[0032] Adicionalmente, quando o formato do sinal de entrada for o formato do sinal YUV4:4:4, da forma mostrada na figura 22, o mesmo particionamento dos blocos de transformação do sinal de luminância é sempre realizado nos blocos de transformação dos sinais de diferença de cor de uma maneira tal que os blocos de transformação sejam configurados para ter o mesmo tamanho.
[0033] Informação sobre o particionamento do sinal de luminância nos blocos de transformação é transmitida para a unidade de codificação com comprimento variável 13 como, por exemplo, um indicador do particionamento do bloco de transformação que mostra se realiza ou não particionamento para cada camada hierárquica.
[0034] Um comutador de seleção 3 realiza um processo de, quando o modo de codificação determinado pela unidade de controle de codificação 2 for um modo de intracodificação, emissão do bloco de codificação emitido a partir da unidade de particionamento de bloco 1 para uma unidade de intraprevisão 4, e, quando o modo de codificação determinado pela unidade de controle de codificação 2 for um modo de intercodificação, emissão do bloco de codificação emitido a partir da unidade de particionamento de bloco 1 para uma unidade de previsão com movimento compensado 5.
[0035] A unidade de intraprevisão 4 realiza, quando um modo de intracodificação for selecionado, como o modo de codificação associado com o bloco de codificação emitido a partir do comutador de seleção 3, pela unidade de controle de codificação 2, um processo de intraprevisão (processo de previsão intraquadro) usando o parâmetro de intraprevisão determinado pela unidade de controle de codificação 2 ao mesmo tempo em que se refere a uma imagem decodificada local armazenada em uma memória 10 para intraprevisão e, então, realiza um processo de geração de uma imagem de intraprevisão. A unidade de intraprevisão 4 constrói um intraprevisor.
[0036] Mais especificamente, quanto ao sinal de luminância, a unidade de intraprevisão 4 realiza o processo de intraprevisão (processo de previsão intraquadro) usando o parâmetro de intraprevisão do sinal de luminância, e gera uma imagem de previsão do sinal de luminância.
[0037] Por outro lado, quanto aos sinais de diferença de cor, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar que o mesmo modo de previsão que o modo de intraprevisão para o sinal de luminância é usado (quando o parâmetro de intraprevisão mostrar um modo de intraprevisão comum entre a luminância e as diferenças de cor (modo DM)), a unidade de intraprevisão realiza a mesma previsão intraquadro que aquela do sinal de luminância, e gera imagens de previsão a partir dos sinais de diferença de cor.
[0038] Adicionalmente, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar um modo de previsão vertical ou um modo de previsão horizontal, a unidade de intraprevisão realiza uma previsão direcional nos sinais de diferença de cor, e gera imagens de previsão a partir dos sinais de diferença de cor.
[0039] Adicionalmente, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar um modo de previsão do sinal de diferença de cor usando uma correlação de luminância (modo LM), a unidade de intraprevisão calcula um parâmetro de correlação que mostra uma correlação entre o sinal de luminância e os sinais de diferença de cor pelo uso dos sinais de luminância e dos sinais de diferença de cor de uma pluralidade de pixels adjacentes aos lados superior e esquerdo de um bloco para o qual uma imagem de previsão deve ser gerada, e gera imagens de previsão a partir dos sinais de diferença de cor pelo uso tanto do parâmetro de correlação quanto do sinal de luminância associado com os blocos dos sinais de diferença de cor que são o alvo para o processo de previsão.
[0040] A unidade de intraprevisão pode ser configurada para, quando o formato do sinal de entrada for o formato do sinal YUV4:4:4, realizar um processo tanto no supradescrito modo DM quanto no supradescrito modo LM, e se impede de selecionar um outro modo de previsão.
[0041] Em virtude de haver uma alta correlação entre a posição da borda do sinal de luminância e aquelas dos sinais de diferença de cor em um sinal YUV4:4:4, pela proibição da aplicação de um modo de previsão diferente daquele aplicado no sinal de luminância nos sinais de diferença de cor, a quantidade de informação no modo de intraprevisão dos sinais de diferença de cor pode ser reduzida e a eficiência de codificação pode ser melhorada.
[0042] Adicionalmente, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, se o sinal de luminância for um bloco quadrado, da forma mostrada na figura 27, cada um dos sinais de diferença de cor é um bloco retangular no qual o número de pixels na direção horizontal é metade, se comparado com aquele do sinal de luminância. Portanto, a fim de aplicar uma previsão na mesma direção no sinal de luminância e nos sinais de diferença de cor quando um sinal YUV4:4:4 for convertido em um sinal YUV4:2:2, da forma mostrada na figura 28, a direção da previsão dos sinais de diferença de cor é configurada para diferir daquela do sinal de luminância no sinal YUV4:2:2 no caso de uma previsão direcional diferente da previsão vertical e da previsão horizontal.
[0043] Concretamente, quando o vetor da direção da previsão do sinal de luminância for expressado por vL = (dxL, dyL), da forma mostrada na figura 29, o vetor da direção da previsão de cada um dos sinais de diferença de cor é expressado por vC = (dxL / 2, dyL). Mais especificamente, quando o ângulo da direção da previsão for expressado por teta, da forma mostrada na figura 30, é necessário realizar uma previsão em uma direção da previsão que tem uma relação mostrada por tanθC = 2tanθL, em que o ângulo da direção da previsão do sinal de luminância é expressado por θL e o ângulo da direção da previsão de cada um dos sinais de diferença de cor é expressado por θC.
[0044] Portanto, a fim de tornar possível realizar corretamente o supradescrito modo DM no qual uma previsão na mesma direção é realizada no sinal de luminância e nos sinais de diferença de cor, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, a unidade de intraprevisão converte um índice do modo de intraprevisão que é usado para o sinal de luminância em um índice do modo de intraprevisão que é usado para a previsão nos sinais de diferença de cor, e realiza o processo de previsão nos sinais de diferença de cor no modo de intraprevisão correspondente ao índice convertido. Concretamente, a unidade de intraprevisão pode ser configurada para converter o índice pela preparação de uma tabela de conversão para o índice e referência à tabela de conversão, ou uma equação de conversão pode ser preparada antecipadamente e a unidade de intraprevisão pode ser configurada para converter o índice de acordo com a equação de conversão.
[0045] Em virtude de a unidade de intraprevisão ser configurada desta maneira, a unidade de intraprevisão pode realizar uma apropriada previsão nos sinais de diferença de cor de acordo com o formato do sinal YUV4:2:2 apenas pela realização da conversão do índice sem mudar o próprio processo de previsão direcional.
[0046] A unidade de previsão com movimento compensado 5 realiza, quando um modo de intercodificação for selecionado, como o modo de codificação associado com o bloco de codificação emitido a partir do comutador de seleção 3, pela unidade de controle de codificação 2, um processo de comparação do bloco de codificação com um ou mais quadros de imagens decodificadas locais armazenados em uma memória de quadro de previsão com movimento compensado 12 para buscar um vetor de movimento, realização de um processo de interprevisão (processo de previsão com movimento compensado) pelo uso do vetor de movimento e do parâmetro de interprevisão, tal como um número de quadro a ser referido, que são determinados pela unidade de controle de codificação 2, e geração de uma imagem de interprevisão.
[0047] Uma unidade de subtração 6 realiza um processo de subtração da imagem de intraprevisão gerada pela unidade de intraprevisão 4 ou da imagem de interprevisão gerada pela unidade de previsão com movimento compensado 5 a partir do bloco de codificação emitido a partir da unidade de particionamento de bloco 1, e emissão de um sinal de diferença de previsão que mostra uma imagem de diferença que é o resultado da subtração para a unidade de transformação / quantização 7.
[0048] A unidade de transformação / quantização 7 refere-se à informação de particionamento do bloco de transformação incluída nos parâmetros de codificação da diferença de previsão determinados pela unidade de controle de codificação 2 e realiza um processo de transformação ortogonal (por exemplo, processo de transformação ortogonal, tais como DCT (transformada discreta de cosseno), DST (transformada discreta de seno) e transformada KL, no qual bases são desenhadas para aprendizado específico da sequência antecipadamente) no sinal de diferença de previsão emitido a partir da unidade de subtração 6 em uma base por bloco de transformação para calcular coeficientes de transformada, e também refere-se ao parâmetro de quantização incluído nos parâmetros de codificação da diferença de previsão e realiza um processo de quantização dos coeficientes de transformada de cada bloco de transformação e, então, transmissão de dados comprimidos que são os coeficientes de transformada quantizados desse modo para a unidade de quantização inversa / transformação inversa 8 e a unidade de codificação com comprimento variável 13.
[0049] Durante a quantização dos coeficientes de transformada, a unidade de transformação / quantização 7 pode realizar um processo de quantização dos coeficientes de transformada pelo uso de uma matriz de quantização para escalonamento, para cada um dos coeficientes de transformada, do tamanho da etapa de quantização calculado a partir do supradescrito parâmetro de quantização.
[0050] A figura 10 é um desenho explicativo que mostra um exemplo da matriz de quantização de uma DCT 4 x 4.
[0051] Números mostrados na figura expressam valores de escalonamento para a quantização dos tamanhos de etapa dos coeficientes de transformada.
[0052] Por exemplo, a fim de suprimir a taxa de bit de codificação, pela realização do escalonamento de uma maneira tal que um coeficiente de transformada em uma banda de frequência mais alta tenha um maior tamanho de etapa de quantização, da forma mostrada na figura 10, ao mesmo tempo em que coeficientes de transformada em uma alta banda de frequência que ocorre em uma área de imagem complicada ou congêneres são reduzidos, desse modo, suprimindo a quantidade de código, a codificação pode ser realizado sem reduzir informação sobre coeficientes em uma baixa banda de frequência que exerce uma grande influência na qualidade subjetiva.
[0053] Assim, quando for desejado que o tamanho de etapa de quantização para cada coeficiente de transformada seja controlado, o que é necessário é somente usar uma matriz de quantização.
[0054] Adicionalmente, como a matriz de quantização, uma matriz que é independente para cada sinal de crominância e para cada modo de codificação (intracodificação ou intercodificação) em cada tamanho de transformação ortogonal pode ser usada, e tanto a seleção de uma matriz de quantização a partir de uma matriz de quantização que é preparada, como um valor inicial, antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem e uma matriz de quantização já codificada quanto o uso de uma nova matriz de quantização podem ser selecionados.
[0055] Assim, a unidade de transformação / quantização 7 define, em um parâmetro da matriz de quantização a ser codificada, informação do indicador que mostra se usa ou não uma nova matriz de quantização para cada sinal de crominância e para cada modo de codificação em cada tamanho de transformação ortogonal.
[0056] Além do mais, quando uma nova matriz de quantização for usada, cada um dos valores de escalonamento na matriz de quantização mostrada na figura 10 é definido no parâmetro da matriz de quantização a ser codificada.
[0057] Ao contrário, quando uma nova matriz de quantização não for usada, um índice que especifica uma matriz a ser usada a partir de uma matriz de quantização que é preparada, como um valor inicial, antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem e uma matriz de quantização já codificada é definido no parâmetro da matriz de quantização a ser codificada. Entretanto, quando nenhuma matriz de quantização já codificada que pode ser referida existir, apenas uma matriz de quantização preparada antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem pode ser selecionada.
[0058] A unidade de quantização inversa / transformação inversa 8 refere-se ao parâmetro de quantização e à informação de particionamento do bloco de transformação incluída nos parâmetros de codificação da diferença de previsão determinados pela unidade de controle de codificação 2 e quantiza inversamente os dados comprimidos emitidos a partir da unidade de transformação / quantização 7 em uma base por bloco de transformação, e também realiza um processo de transformação ortogonal inversa nos coeficientes de transformada que são os dados comprimidos inversamente quantizados desse modo e realiza um processo de cálculo de um sinal de diferença de previsão de decodificação local correspondente ao sinal de diferença de previsão emitido a partir da unidade de subtração 6. Quando a unidade de transformação / quantização 7 realizar um processo de quantização pelo uso de uma matriz de quantização, a matriz de quantização é referida e um correspondente processo de quantização inversa também é realizado no processo de quantização inversa.
[0059] Uma unidade de adição 9 realiza um processo de adição do sinal de diferença de previsão de decodificação local calculado pela unidade de quantização inversa / transformação inversa 8 e a imagem de intraprevisão gerada pela unidade de intraprevisão 4 ou a imagem de interprevisão gerada pela unidade de previsão com movimento compensado 5, para calcular uma imagem decodificada local correspondente ao bloco de codificação emitido a partir da unidade de particionamento de bloco 1.
[0060] A memória 10 para intraprevisão é uma mídia de gravação para armazenar a imagem decodificada local calculada pela unidade de adição 9.
[0061] Uma unidade de filtro em malha 11 realiza um processo de filtragem predeterminado na imagem decodificada local calculada pela unidade de adição 9, e realiza um processo de emissão da imagem decodificada local processada por filtragem desse modo.
[0062] Concretamente, a unidade de filtro em malha realiza um processo de filtragem (filtragem de desbloqueio) para reduzir uma distorção que ocorre em um contorno entre blocos de transformação e uma distorção que ocorre em um contorno entre blocos de previsão, um processo (processo de deslocamento adaptativo de pixel) de adição adaptativa de um deslocamento em uma base por pixel, um processo de filtragem adaptativa para comutar de forma adaptativa entre filtros lineares, tais como filtros Wiener, e realização do processo de filtragem, e congêneres.
[0063] A unidade de filtro em malha 11 determina se realiza ou não o processo para cada um dos supradescritos processos, incluindo o processo de filtragem de desbloqueio, o processo de deslocamento adaptativo de pixel e o processo de filtragem adaptativa, e emite um indicador de habilitação de cada um dos processos, como informação de cabeçalho, para a unidade de codificação com comprimento variável 13. Quando uma pluralidade de processos de filtragem supradescritos forem usados, os processos de filtragem são realizados sequencialmente. A figura 11 mostra um exemplo da configuração da unidade de filtro em malha 11 no caso de uso de uma pluralidade de processos de filtragem.
[0064] No geral, ao mesmo tempo em que a qualidade da imagem melhora com o aumento no número de tipos de processos de filtragem a serem usados, a carga de processamento aumenta. Mais especificamente, há uma proporcionalidade entre a qualidade da imagem e a carga de processamento. Também, o efeito de melhoria da qualidade da imagem de cada processo de filtragem difere, dependendo das características da imagem que é o alvo para o processo de filtragem. Assim, os processos de filtragem a serem usados podem ser determinados de acordo com a carga de processamento aceitável em relação ao dispositivo de codificação de imagem e as características das imagens sujeitas ao processo de codificação. Por exemplo, quando houver uma demanda para reduzir a frequência com a qual o processo não pode ser realizado em vez de prover a configuração mostrada na figura 11, pode ser considerado um exemplo no qual a unidade de filtro em malha é configurada apenas com o processo de filtragem de desbloqueio e o processo de deslocamento adaptativo de pixel.
[0065] No processo de filtragem de desbloqueio, vários parâmetros a serem usados para selecionar a intensidade do filtro aplicado em um contorno de bloco podem ser mudados a partir de valores iniciais. Durante a mudança de um parâmetro, o parâmetro é emitido para a unidade de codificação com comprimento variável 13 como informação de cabeçalho.
[0066] No processo de deslocamento adaptativo de pixel, uma imagem é particionada em uma pluralidade de blocos primeiro. Um caso de não realização do processo de deslocamento é definido como um método de classificação de classe, e um método de classificação de classe é selecionado, para cada um dos blocos, dentre uma pluralidade de métodos de classificação de classe que são preparados antecipadamente.
[0067] A seguir, pelo uso do método de classificação de classe selecionado, cada pixel incluído no bloco é classificado em uma das classes, e um valor de deslocamento para compensar uma distorção de codificação é calculado para cada uma das classes.
[0068] Finalmente, um processo de adição do deslocamento no valor de luminância da imagem decodificada local é realizado, desse modo, melhorando a qualidade de imagem da imagem decodificada local.
[0069] Portanto, no processo de deslocamento adaptativo de pixel, a informação de particionamento de bloco, um índice que indica o método de classificação de classe selecionado para cada bloco, e informação de deslocamento que especifica o valor de deslocamento calculado para cada classe em uma base por bloco são emitidos para a unidade de codificação com comprimento variável 13 como informação de cabeçalho.
[0070] No processo de deslocamento adaptativo de pixel, a imagem pode ser sempre particionada em blocos de tamanho fixo, por exemplo, maiores blocos de codificação, um método de classificação de classe pode ser selecionado para cada um dos blocos, e um processo de deslocamento adaptativo para cada uma das classes pode ser realizado. Neste caso, a necessidade da supradescrita informação de particionamento de bloco pode ser eliminada, a quantidade de código pode ser reduzida pela quantidade de código exigida para a informação de particionamento de bloco, e a eficiência de codificação pode ser melhorada.
[0071] No processo de filtragem adaptativa, a imagem decodificada local é classificada por classe pelo uso de um método predeterminado, um filtro para compensar uma distorção sobreposta na mesma é desenhado para uma região (imagem decodificada local) que pertence a cada uma das classes, e um processo de filtragem é realizado na imagem decodificada local pelo uso do filtro.
[0072] O filtro desenhado para cada classe é, então, emitido para a unidade de codificação com comprimento variável 13 como informação de cabeçalho.
[0073] Como o método de classificação de classe, há um simplificado método de separar espacialmente a imagem em intervalos iguais, e um método de fazer uma classificação em uma base por bloco de acordo com as características locais (variância, etc.) da imagem.
[0074] Adicionalmente, o número de classes usadas no processo de filtragem adaptativa pode ser definido antecipadamente como um valor comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem, ou pode ser um parâmetro a ser codificado.
[0075] Em comparação com o primeiro, o último pode definir livremente o número de classes a serem usadas, desse modo, aumentando o efeito de melhoria da qualidade da imagem. Por outro lado, já que o último codifica o número de classes, a quantidade de código aumenta em uma quantidade necessária para a codificação.
[0076] Em virtude de o sinal de vídeo precisar ser referido pela unidade de filtro em malha 11, da forma mostrada na figura 11, durante a realização do processo de deslocamento adaptativo de pixel e do processo de filtragem adaptativa, o dispositivo de codificação de imagem mostrado na figura 1 precisa ser modificado de uma maneira tal que o sinal de vídeo seja inserido na unidade de filtro em malha 11.
[0077] A memória de quadro de previsão com movimento compensado 12 é uma mídia de gravação para armazenar a imagem decodificada local na qual o processo de filtragem é realizado pela unidade de filtro em malha 11.
[0078] A unidade de codificação com comprimento variável 13 codifica com comprimento variável os dados comprimidos emitidos a partir da unidade de transformação / quantização 7, o sinal de saída proveniente da unidade de controle de codificação 2 (a informação de particionamento de bloco sobre o interior de cada maior bloco de codificação, o modo de codificação, os parâmetros de codificação da diferença de previsão, e o parâmetro de intraprevisão ou o parâmetro de interprevisão), e o vetor de movimento emitido a partir da unidade de previsão com movimento compensado 5 (quando o modo de codificação for um modo de intercodificação), para gerar dados codificados.
[0079] A unidade de codificação com comprimento variável 13 também codifica cabeçalhos no nível da sequência e cabeçalhos no nível da imagem parada como a informação de cabeçalho de um fluxo contínuo de bits codificado, da forma ilustrada na figura 13, e gera um fluxo contínuo de bits codificado, bem como dados de imagem parada.
[0080] Os dados de imagem parada são configurados com uma ou mais peças de dados de fatia, e cada um dos dados de fatia é adquirido pela agregação do cabeçalho no nível de fatia e dos supradescritos dados codificados contidos na fatia.
[0081] O cabeçalho no nível da sequência é adquirido pela agregação de peças de informação de cabeçalho que são, no geral, comuns em uma base por sequência e que incluem o tamanho da imagem, o formato do sinal de crominância, a profundidade de bit dos valores de sinal do sinal de luminância e dos sinais de diferença de cor, a informação do indicador de habilitação de cada processo de filtragem (processo de filtragem adaptativa, processo de deslocamento adaptativo de pixel e processo de filtragem de desbloqueio) na unidade de filtro em malha 11 em uma base por sequência, e a informação do indicador de habilitação da matriz de quantização.
[0082] Um cabeçalho no nível da imagem parada é uma combinação de peças de informação de cabeçalho que são definidas em uma base por imagem parada e que inclui um índice de um cabeçalho no nível da sequência a ser referido, o número de imagens paradas de referência no momento da compensação de movimento, e um indicador de inicialização da tabela de probabilidade para codificação de entropia, o parâmetro da matriz de quantização.
[0083] Um cabeçalho no nível de fatia é uma combinação de parâmetros que são definidos em uma base por fatia e que incluem informação de posição que mostra em qual posição da imagem parada a fatia que está sendo atualmente processada existe, um índice que indica qual cabeçalho no nível da imagem parada deve ser referido, o tipo de codificação da fatia (todas intracodificação, intercodificação ou congêneres), e a informação do indicador que mostra se realiza-se ou não cada um dos processos de filtragem na unidade de filtro em malha 11 (o processo de filtragem adaptativa, o processo de deslocamento adaptativo de pixel e o processo de filtragem de desbloqueio).
[0084] Quando o sinal de entrada for um sinal entrelaçado de vídeo e uma configuração de codificação mostrada na figura 33 for provida, pela definição do campo de topo mostrado por uma caixa cinza que tem um número de 32 na ordem de exibição da figura 33 (um número de 18 na ordem de decodificação (codificação)) como uma imagem parada que pode ser acessada aleatoriamente, um fluxo contínuo de bits codificado que pode ser corretamente reproduzido a partir do campo de topo em todos os momentos independente da posição de início da decodificação do fluxo contínuo de bits codificado pode ser gerado.
[0085] Entretanto, é definido na referência não patente 1 que uma imagem parada primária deve ser decodificada (codificada) à frente de imagens paradas secundárias, e, portanto, o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição da figura 33 não pode ser codificado como uma imagem parada, tal como uma imagem parada CRA, que é definida na referência não patente 1 e que habilita acesso aleatório (imagem parada de Ponto de Acesso Intra-Aleatório (IRAP) descrita na referência não patente 1). A seguir, um método de definição do campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição da figura 33 como uma imagem parada que pode ser acessada aleatoriamente, ao mesmo tempo em que se conforma com as especificações descritas na referência não patente 1, será explicado a seguir.
[0086] Concretamente, o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição é definido como uma imagem parada não IRAP, e é codificado apenas pelo uso de uma intraprevisão. Então, como informação adicional do fluxo contínuo de bits codificado, tal como Informação de Acúmulo Complementar (SEI) descrita, por exemplo, na referência não patente 1, informação que mostra que o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição da figura 33 é um ponto de acesso aleatório é codificada. Por exemplo, pelo uso da Mensagem SEI do Ponto de Recuperação que tem peças de sintaxe mostradas na figura 38 que é um tipo da SEI descrita na referência não patente 1, o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição da figura 33 é definido como uma imagem parada em um Ponto de Recuperação (recovery_poc_cnt). Adicionalmente, considera-se que, neste momento, uma imagem parada cujas ordem de codificação (decodificação) e, também, ordem de exibição são posteriores àquelas da supradescrita imagem parada do ponto de recuperação (o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição) é proibida de fazer uma referência de previsão a uma imagem parada cuja ordem de exibição é anterior àquela da supradescrita imagem parada do ponto de recuperação, como no caso da restrição imposta nas imagens paradas secundárias. Entretanto, em virtude de a supradescrita imagem parada do ponto de recuperação ser uma imagem parada não IRAP, mesmo em conformidade com as especificações descritas na referência não patente 1, não há restrição de que, como uma relação entre imagens paradas primárias e imagens paradas secundárias, uma imagem parada primária deve ser decodificada (codificada) à frente de imagens paradas secundárias. Portanto, depois que o campo de base que tem um número de 33 na ordem de exibição, o campo de base correspondente a uma imagem parada secundária, for codificado imediatamente depois que o campo de topo que tem um número de 32 na ordem de exibição for codificado, uma imagem parada cuja ordem de codificação (decodificação) é posterior àquela da supradescrita imagem parada do ponto de recuperação correspondente a uma imagem parada primária, mas cuja ordem de exibição é anterior àquela da imagem parada do ponto de recuperação pode ser codificada. Mais especificamente, uma imagem parada como esta pode ser codificada na ordem de codificação (decodificação), da forma mostrada na figura 33. Fazendo desta maneira, sem usar uma imagem parada CRA, uma imagem parada primária e uma imagem parada secundária, um fluxo contínuo de bits codificado que pode ser corretamente reproduzido a partir de um campo de topo em todos os momentos independente da posição de início da decodificação do fluxo contínuo de bits codificado pode ser gerado na configuração do par de campos que usa uma previsão bidirecional, da forma mostrada na figura 33.
[0087] A seguir, um exemplo de um concreto método de uso da Mensagem SEI do Ponto de Recuperação será descrito. Primeiro, a Mensagem SEI do Ponto de Recuperação é provida como um cabeçalho de nível superior de uma imagem parada que se deseja que possa ser acessada aleatoriamente (o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição da figura 33). Mais especificamente, a supradescrita SEI é provida para o interior de uma unidade de acesso da supradescrita imagem parada que se deseja que possa ser acessada aleatoriamente. A unidade de acesso é uma unidade para acesso de dados que incluem os dados codificados sobre uma imagem parada, o que é definido na referência não patente 1. Além do mais, quanto à Mensagem SEI do Ponto de Recuperação provida, os valores das peças de sintaxe mostradas na figura 38 são providos como segue. • recovery _poc_cnt = 0 • exact_match_flag = 1 • broken_link_flag = 0
[0088] Neste caso, recovery_poc_cnt sendo 0 mostra que a imagem parada da unidade de acesso para a qual esta SEI é provida é uma imagem parada do ponto de recuperação, e exact_match_flag sendo 1 mostra que, durante a realização da decodificação do Ponto de Recuperação, uma imagem parada cuja ordem de exibição é posterior àquela da imagem parada do ponto de recuperação pode ser decodificada corretamente. Em decorrência disto, é mostrado que a imagem parada da unidade de acesso para a qual esta SEI é provida é uma imagem parada do ponto de recuperação que pode ser acessada aleatoriamente. Adicionalmente, em virtude de uma imagem parada cuja ordem de codificação (decodificação) é posterior àquela da imagem parada do ponto de recuperação poder ser decodificada corretamente quando a decodificação for iniciada a partir de uma imagem parada IRAP existente à frente do Ponto de Recuperação, broken_link_flag é definido em zero (quando este indicador for 1, é mostrado que uma imagem parada como esta não pode ser decodificada corretamente, enquanto que, quando este indicador for 0, é mostrado que nada definido é dito sobre o que pode acontecer).
[0089] Além do mais, durante a provisão da mensagem SEI do período de submissão a buffer, como SEI, para o interior da unidade de acesso de cada imagem parada IRAP como informação de gerenciamento de buffer, a mensagem SEI do período de Submissão a buffer também é provida para o interior da unidade de acesso da imagem parada do ponto de recuperação, bem como para o interior da unidade de acesso de cada imagem parada IRAP. Fazendo desta maneira, o mesmo gerenciamento de buffer do caso de uma imagem parada IRAP pode ser realizado.
[0090] Embora o caso de definição da informação que um campo de topo é um ponto de acesso aleatório na SEI seja explicado na explicação da figura 38, esta modalidade não é limitada a este exemplo, desde que a informação possa ser definida em um cabeçalho de nível superior. Concretamente, há um método de definição, como um novo tipo de imagem parada que pertence a imagens paradas IRAP, de uma imagem parada IRAP especial que torna possível codificar apenas uma imagem parada secundária contínua à frente de imagens paradas primárias, e codificar o campo de topo que tem um número de 32 na ordem de exibição pelo uso da nova imagem parada IRAP, e um método para definir novamente uma imagem parada secundária especial que pode ser codificada à frente de imagens paradas primárias, e codificar, como uma imagem parada, IRAP tal como uma imagem parada CRA, o campo de topo que tem um número de 32 na ordem de exibição e, também, codificar, como a imagem parada secundária especial definida anteriormente, o campo de base que tem um número de 33 na ordem de exibição. Adicionalmente, unidades que realizam o supradescrito processo de codificação e o supradescrito processo de multiplexação são um codificador e um multiplexador que a unidade de codificação com comprimento variável 13 mostrada na figura 1 inclui.
[0091] Como um exemplo concreto de definição de uma imagem parada IRAP especial ou uma imagem parada secundária especial, há um método de, para unidades NAL descritas na referência não patente 1 e que mostram as definições das imagens paradas, definição de novas unidades NAL que mostram que elas são as imagens paradas especiais supradescritas, respectivamente.
[0092] Embora o exemplo da figura 33 tenha uma configuração para realização da decodificação a partir de um campo de topo, pela configuração de um fluxo contínuo de bits codificado da forma supramencionada, também, em um caso de uma configuração para realização da codificação, começando a partir de um campo de base em todos os momentos, um fluxo contínuo de bits codificado que pode ser corretamente reproduzido a partir de um campo de base em todos os momentos independente da posição de início da decodificação do fluxo contínuo de bits codificado pode ser gerado.
[0093] Adicionalmente, a figura 33 mostra apenas um exemplo da configuração do par de campos que usa uma previsão bidirecional, e várias configurações de referência podem ser providas. Pela codificação de uma imagem parada que pode ser acessada aleatoriamente como uma imagem parada não IRAP da maneira supradescrita, independente da configuração, e realização da geração de um fluxo contínuo de bits codificado pelo uso, informação adicional, tal como SEI, informação que mostra que imagem parada é uma imagem parada que pode ser acessada aleatoriamente, um fluxo contínuo de bits codificado que pode ser corretamente reproduzido a partir de um campo de topo em todos os momentos independente da posição de início da decodificação do fluxo contínuo de bits codificado pode ser gerado. Por exemplo, também, um campo de topo mostrado em uma caixa cinza que tem um número de 32 na ordem de exibição da figura 34 pode ser similarmente definido como um ponto de acesso aleatório. Adicionalmente, pela configuração de um fluxo contínuo de bits codificado da mesma maneira supradescrita, também, em um caso no qual uma configuração de referência, da forma mostrada nas imagens paradas 35 e 36, que tem uma característica escalonável em uma direção dos tempos de exibição é provida pelo uso de um ID temporal descrito na referência não patente 1, um fluxo contínuo de bits codificado que pode ser corretamente reproduzido a partir de um campo de base em todos os momentos, em uma camada que tem um ID temporal = 0, independente da posição de início da decodificação do fluxo contínuo de bits codificado pode ser gerado.
[0094] Adicionalmente, embora o exemplo de codificação da informação que mostra que acesso aleatório pode ser realizado seja explicado anteriormente, em vez da codificação de uma informação como esta, pela mudança das restrições impostas nas imagens paradas primárias e nas imagens paradas secundárias de uma maneira tal que, na configuração do par de campos, quando um campo de topo for uma imagem parada IRAP, apenas o campo de base que pareia com o campo de topo pode ser codificado (decodificado) à frente de imagens paradas primárias, e sempre codificando, como uma imagem parada IRAP, uma imagem parada que pode ser acessada aleatoriamente, acesso aleatório pode ser implementado.
[0095] No exemplo mostrado na figura 1, a unidade de particionamento de bloco 1, a unidade de controle de codificação 2, o comutador de seleção 3, a unidade de intraprevisão 4, a unidade de previsão com movimento compensado 5, a unidade de subtração 6, a unidade de transformação / quantização 7, a unidade de quantização inversa / transformação inversa 8, o adicionador 9, a memória 10 para intraprevisão, a unidade de filtro em malha 11, a memória de quadro de previsão com movimento compensado 12, a unidade de codificação com comprimento variável 13 e a unidade de particionamento de fatia 14, que são os componentes do dispositivo de codificação de imagem, são considerados como configurados com peças de hardware para uso exclusivo (por exemplo, circuitos integrados semicondutores em cada um dos quais uma CPU é montada, microcomputadores de um chip ou congêneres). Em um caso no qual o dispositivo de codificação de imagem é configurado com um computador, um programa no qual os processos realizados pela unidade de particionamento de bloco 1, pela unidade de controle de codificação 2, pelo comutador de seleção 3, pela unidade de intraprevisão 4, pela unidade de previsão com movimento compensado 5, pela unidade de subtração 6, pela unidade de transformação / quantização 7, pela unidade de quantização inversa / transformação inversa 8, pelo adicionador 9, pela unidade de filtro em malha 11, pela unidade de codificação com comprimento variável 13 e pela unidade de particionamento de fatia 14 são descritos pode ser armazenado em uma memória do computador e uma CPU do computador pode executar o programa armazenado na memória.
[0096] A figura 2 é um fluxograma que mostra o processamento (método de codificação de imagem) realizado pelo dispositivo de codificação de imagem de acordo com a modalidade 1 da presente invenção.
[0097] A figura 3 é um diagrama de blocos que mostra o dispositivo de decodificação de imagem de acordo com a modalidade 1 da presente invenção.
[0098] Em relação à figura 3, durante a recepção do fluxo contínuo de bits codificado gerado pelo dispositivo de codificação de imagem mostrado na figura 1, uma unidade de decodificação com comprimento variável 31 decodifica cada uma das peças de informação de cabeçalho, tais como cabeçalhos no nível da sequência, cabeçalhos no nível da imagem parada e cabeçalhos no nível de fatia, a partir do fluxo contínuo de bits, e também decodifica com comprimento variável a informação de particionamento de bloco que mostra o estado de particionamento de cada um dos blocos de codificação particionados hierarquicamente a partir do fluxo contínuo de bits codificado. Neste momento, considerando que cada um de um sinal no formato YUV4:4:4 e um sinal no formato RGB4:4:4 é um sinal de imagem monocromática, quando informação que mostra que codificação monocromática (YUV4:0:0) é realizada independentemente for incluída na informação de cabeçalho, um processo de decodificação pode ser realizado independentemente no fluxo contínuo de bits codificado de cada sinal de crominância.
[0099] Neste momento, quando informação adicional, tal como Informação de Acúmulo Complementar (SEI) descrita na referência não patente 1, for incluída, se a informação adicional incluir informação que mostra que uma imagem parada específica é um ponto de acesso aleatório, acesso aleatório é habilitado pela realização da decodificação a partir desta imagem parada. Por exemplo, na configuração de codificação da figura 33, em conformidade com as especificações descritas na referência não patente 1, embora, quando o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição for decodificado como uma imagem parada não IRAP, este campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição não é reconhecido como uma imagem parada que pode ser acessada aleatoriamente, quando a Mensagem SEI do Ponto de Recuperação que tem as peças de sintaxe mostradas na figura 38 que é um tipo de SEI descrita na referência não patente 1 mostrar que o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição é definido como um Ponto de Recuperação (recovery_poc_cnt), este campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição pode ser reconhecido como uma imagem parada que pode ser acessada aleatoriamente. Além do mais, em virtude de este campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição ser uma imagem parada não IRAP, mesmo em conformidade com as especificações descritas na referência não patente 1, o processo sob a restrição que é imposta em imagens paradas primárias e imagens paradas secundárias e que uma imagem parada primária deve ser decodificada (codificada) à frente de imagens paradas secundárias não é indispensável, e o fluxo contínuo de bits codificado, que é gerado na condição de que, depois que o campo de base que tem um número de 33 na ordem de exibição, que é uma imagem parada secundária, for decodificado imediatamente depois de o campo de topo que tem um número de 32 na ordem de exibição ser decodificado, uma imagem parada primária deve ser decodificada, pode ser decodificado corretamente, e, mesmo se a decodificação for iniciada a partir do supradescrito campo de topo, os subsequentes campos podem ser decodificados e reproduzidos corretamente na ordem de exibição.
[00100] Como um exemplo concreto da Mensagem SEI do Ponto de Recuperação, é provido um caso no qual a supradescrita SEI é decodificada na unidade de acesso da imagem parada que se deseja que possa ser acessada aleatoriamente (o campo de topo mostrado pela caixa cinza que tem um número de 32 na ordem de exibição), e o valor de cada uma das peças de sintaxe mostradas na figura 38 é decodificado como será mostrado a seguir. • recovery_poc_cnt = 0 • exact_match_flag = 1 • broken_link_flag = 0
[00101] O significado mostrado por cada uma das peças de sintaxe supramencionada é da forma mencionada na explicação do dispositivo de codificação de imagem, e a decodificação desta SEI como informação adicional torna claro que a imagem parada alvo pode ser acessada aleatoriamente.
[00102] Adicionalmente, em um caso no qual o dispositivo de codificação de imagem define uma imagem parada especial que permite uma configuração de codificação como esta como um novo tipo de unidade NAL ou congêneres, em vez de informação adicional, tal como SEI, o correspondente dispositivo de decodificação de imagem pode ser configurado de uma maneira tal para similarmente definir uma imagem parada especial como um novo tipo de nova unidade NAL ou congêneres. Neste caso, o dispositivo de decodificação de imagem pode reconhecer que o campo de topo que tem um número de 32 pode ser acessado aleatoriamente pela decodificação da supradescrita informação.
[00103] Embora o exemplo da figura 33 tenha uma configuração para realização da decodificação a partir de um campo de topo, também, em um caso de um fluxo contínuo de bits codificado que é configurado de uma maneira tal que um campo de base seja sempre codificado antes de qualquer outra coisa, pelo uso de uma imagem parada não IRAP e informação adicional, tal como SEI, durante a realização da decodificação a partir de um campo de base específico mostrado pela informação adicional, campos subsequentes a este campo de base específico podem ser decodificados corretamente na ordem de exibição.
[00104] Adicionalmente, também, no caso em que a configuração de referência, da forma mostrada nas imagens paradas 35 e 36, que tem uma característica escalonável em uma direção dos tempos de exibição for provida pelo uso de um ID temporal descrito na referência não patente 1, quando o campo de topo mostrado pela caixa cinza que tem um número de 32 for uma imagem parada não IRAP, como no supradescrito caso, e informação que mostra que o campo de topo mostrado pela caixa cinza que tem um número de 32 é um ponto de acesso aleatório for decodificada pelo uso da informação adicional, tal como SEI, o fluxo contínuo de bits codificado pode ser corretamente decodificado a partir de um campo de base em todos os momentos, em uma camada que tem um ID temporal = 0, independente da posição de início da decodificação do fluxo contínuo de bits codificado.
[00105] Adicionalmente, embora o exemplo no qual a informação que mostra que acesso aleatório pode ser realizado é codificada seja explicado anteriormente, em um caso no qual, no dispositivo de codificação de imagem, em vez da codificação de uma informação como esta, a restrição imposta nas imagens paradas primárias e nas imagens paradas secundárias for mudada de uma maneira tal que, quando um campo de topo for uma imagem parada IRAP na configuração do par de campos, apenas o campo de base que pareia com o campo de topo pode ser decodificado à frente de imagens paradas primárias, a mesma restrição é imposta no correspondente dispositivo de decodificação de imagem e, em decorrência disto, acesso aleatório é implementado em todos os momentos pelo uso de uma imagem parada IRAP.
[00106] Quando a informação do indicador de habilitação da matriz de quantização incluída na supradescrita informação de cabeçalho mostrar "habilitado", a unidade de decodificação com comprimento variável 31 decodifica com comprimento variável o parâmetro da matriz de quantização e especifica uma matriz de quantização. Concretamente, para cada sinal de crominância e para cada modo de codificação em cada tamanho de transformação ortogonal, quando o parâmetro da matriz de quantização mostrar que tanto uma matriz de quantização que é preparada, como um valor inicial, antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem, quanto uma matriz de quantização já decodificada são usadas (nenhuma nova matriz de quantização é usada), a unidade de decodificação com comprimento variável refere-se à informação de índice que especifica qual matriz de quantização nas supradescritas matrizes é usada, para especificar uma matriz de quantização e, quando o parâmetro da matriz de quantização mostrar que uma nova matriz de quantização é usada, especificar, como a matriz de quantização a ser usada, a matriz de quantização incluída no parâmetro da matriz de quantização.
[00107] A unidade de decodificação com comprimento variável 31 também refere-se a cada informação de cabeçalho para especificar o estado de particionamento da fatia e, também, especificar cada maior bloco de codificação incluído nos dados de fatia sobre cada fatia, refere-se à informação de particionamento de bloco para particionar cada maior bloco de codificação hierarquicamente e especifica cada bloco de codificação que é uma unidade na qual o processo de decodificação deve ser realizado, e realiza um processo de decodificação de comprimento variável dos dados comprimidos, do modo de codificação, do parâmetro de intraprevisão (quando o modo de codificação for um modo de intracodificação), do parâmetro de interprevisão (quando o modo de codificação for modo de intercodificação), do vetor de movimento (quando o modo de codificação for um modo de intercodificação) e dos parâmetros de codificação da diferença de previsão, que são associados com cada bloco de codificação.
[00108] Uma unidade de quantização inversa / transformação inversa 32 refere-se ao parâmetro de quantização e à informação de particionamento do bloco de transformação que são incluídos nos parâmetros de codificação da diferença de previsão decodificados com comprimento variável pela unidade de decodificação com comprimento variável 31, para quantizar inversamente os dados comprimidos decodificados com comprimento variável pela unidade de decodificação com comprimento variável 31 em uma base por bloco de transformação, realizar um processo de transformação ortogonal inversa nos coeficientes de transformada que são os dados comprimidos inversamente quantizados desse modo, e realizar um processo de cálculo de um sinal de diferença de previsão de decodificação que é igual ao sinal de diferença de previsão de decodificação local emitido a partir da unidade de quantização inversa / transformação inversa 8 mostrada na figura 1.
[00109] Neste caso, a partir da supradescrita informação de particionamento do bloco de transformação, o estado de particionamento dos blocos de transformação em cada bloco de codificação é determinado. Por exemplo, no caso de um sinal que tem o formato YUV4:2:0, os tamanhos do bloco de transformação são determinados pela realização do particionamento hierárquico de cada bloco de codificação em blocos em forma de árvore quaternária, da forma mostrada na figura 20.
[00110] O sinal de luminância é configurado de uma maneira tal que cada bloco de codificação seja hierarquicamente particionado em um ou mais dos blocos de transformação quadrados, da forma mostrada, por exemplo, na figura 20.
[00111] Cada um dos sinais de diferença de cor é configurado de uma maneira tal que, quando o formato do sinal de entrada for o formato do sinal YUV4:2:0, cada bloco de codificação é hierarquicamente particionado em um ou mais dos blocos de transformação quadrados, da forma mostrada na figura 20, como o sinal de luminância. Neste caso, o tamanho do bloco de transformação de cada um dos sinais de diferença de cor é metade daquele do correspondente sinal de luminância nas direções tanto vertical quanto horizontal.
[00112] Da forma mostrada na figura 21, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, o mesmo particionamento hierárquico em blocos em forma de árvore quaternária que aquele no sinal de luminância é realizado. Adicionalmente, em virtude de a forma de cada bloco particionado ser um retângulo no qual o número de pixels na direção vertical é duas vezes maior que o número de pixels na direção horizontal, pelo particionamento adicional de cada bloco particionado em dois blocos na direção vertical, cada bloco particionado é feito para consistir em dois blocos de transformação que têm o mesmo tamanho de bloco que os sinais de diferença de cor em um sinal YUV4:2:0 (um tamanho que é metade do tamanho nas direções tanto vertical quanto horizontal de cada bloco de transformação do sinal de luminância).
[00113] Quando o formato do sinal de entrada for o formato do sinal YUV4:4:4, da forma mostrada na figura 22, o mesmo particionamento dos blocos de transformação do sinal de luminância é sempre realizado nos blocos de transformação de cada um dos sinais de diferença de cor de uma maneira tal que os blocos de transformação sejam configurados para ter os mesmos tamanhos.
[00114] Adicionalmente, quando cada informação de cabeçalho decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 mostrar que, na fatia que é atualmente processada, um processo de quantização inversa é realizado pelo uso de uma matriz de quantização, o processo de quantização inversa é realizado pelo uso da matriz de quantização.
[00115] Concretamente, a unidade de quantização inversa / transformação inversa realiza o processo de quantização inversa pelo uso da matriz de quantização especificada a partir de cada informação de cabeçalho.
[00116] Um comutador de seleção 33 realiza um processo de, quando o modo de codificação decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intracodificação, emissão do parâmetro de intraprevisão que é decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 para uma unidade de intraprevisão 34, ao mesmo tempo em que realiza um processo, quando o modo de codificação decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intercodificação, emissão do parâmetro de interprevisão e do vetor de movimento que são decodificados com comprimento variável pela unidade de decodificação com comprimento variável 31 para uma unidade de compensação de movimento 35.
[00117] Quando o modo de codificação associado com o bloco de codificação determinado a partir da informação de particionamento de bloco decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intracodificação, a unidade de intraprevisão 34 realiza um processo de intraprevisão (processo de previsão intraquadro) usando o parâmetro de intraprevisão emitido a partir do comutador de seleção 33 ao mesmo tempo em que se refere a uma imagem decodificada armazenada em uma memória 37 para intraprevisão, e realiza um processo de geração de uma imagem de intraprevisão. A unidade de intraprevisão 34 constrói um intraprevisor.
[00118] Mais especificamente, quanto ao sinal de luminância, a unidade de intraprevisão 34 realiza o processo de intraprevisão (processo de previsão intraquadro) usando o supradescrito parâmetro de intraprevisão no sinal de luminância para gerar uma imagem de previsão do sinal de luminância.
[00119] Por outro lado, quanto aos sinais de diferença de cor, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar que o mesmo modo de previsão que o modo de intraprevisão para o sinal de luminância é usado (quando o parâmetro de intraprevisão mostrar o modo de intraprevisão comum entre a luminância e as diferenças de cor (modo DM)), a unidade de intraprevisão realiza a mesma previsão intraquadro que aquela do sinal de luminância, para gerar imagens de previsão dos sinais de diferença de cor.
[00120] Adicionalmente, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar o modo de previsão vertical ou o modo de previsão horizontal, a unidade de intraprevisão realiza a previsão direcional nos sinais de diferença de cor para gerar imagens de previsão dos sinais de diferença de cor.
[00121] Adicionalmente, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar o modo de previsão do sinal de diferença de cor usando uma correlação de luminância (modo LM), a unidade de intraprevisão calcula um parâmetro de correlação que mostra a correlação entre o sinal de luminância e os sinais de diferença de cor pelo uso dos sinais de luminância e dos sinais de diferença de cor de uma pluralidade de pixels adjacentes aos lados superior e esquerdo de um bloco para o qual uma imagem de previsão deve ser gerada, e gera imagens de previsão a partir dos sinais de diferença de cor pelo uso tanto do parâmetro de correlação quanto do sinal de luminância associados com o bloco de cada um dos sinais de diferença de cor que é o alvo para o processo de previsão.
[00122] Em um caso no qual o dispositivo de codificação de imagem for configurado para realizar o processo no supradescrito modo DM ou no supradescrito modo LM e se impedir de selecionar um outro modo de previsão quando o formato do sinal de entrada for o formato do sinal YUV4:4:4, o dispositivo de decodificação de imagem é similarmente configurado de uma maneira tal para poder decodificar o fluxo contínuo de bits codificado gerado pelo dispositivo de codificação de imagem.
[00123] Em virtude de haver uma alta correlação entre a posição da borda do sinal de luminância e aquelas dos sinais de diferença de cor em um sinal YUV4:4:4, pela proibição da aplicação de um modo de previsão diferente daquele aplicado no sinal de luminância nos sinais de diferença de cor, a quantidade de informação no modo de intraprevisão dos sinais de diferença de cor pode ser reduzida e a eficiência de codificação pode ser melhorada.
[00124] Adicionalmente, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, se o sinal de luminância for um bloco quadrado, da forma mostrada na figura 27, cada um dos sinais de diferença de cor é um bloco retangular no qual o número de pixels na direção horizontal é metade, se comparado com aquele do sinal de luminância. Portanto, a fim de aplicar uma previsão na mesma direção no sinal de luminância e nos sinais de diferença de cor quando um sinal YUV4:4:4 for convertido em um sinal YUV4:2:2, da forma mostrada na figura 28, a direção da previsão dos sinais de diferença de cor é configurada para diferir daquela do sinal de luminância no sinal YUV4:2:2 no caso de uma previsão direcional diferente da previsão vertical e da previsão horizontal.
[00125] Concretamente, quando o vetor da direção da previsão do sinal de luminância for expressado por vL = (dxL, dyL), da forma mostrada na figura 29, o vetor da direção da previsão de cada um dos sinais de diferença de cor é expressado por vC = (dxL / 2, dyL). Mais especificamente, quando o ângulo da direção da previsão for expressado por teta, da forma mostrada na figura 30, é necessário realizar uma previsão em uma direção da previsão que tem uma relação mostrada por tanθC = 2tanθL, em que o ângulo da direção da previsão do sinal de luminância é expressado por θL e o ângulo da direção da previsão de cada um dos sinais de diferença de cor é expressado por θC.
[00126] Portanto, a fim de tornar possível realizar corretamente o supradescrito modo DM no qual uma previsão na mesma direção é realizada no sinal de luminância e nos sinais de diferença de cor, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, a unidade de intraprevisão converte um índice do modo de intraprevisão que é usado para o sinal de luminância em um índice do modo de intraprevisão que é usado para a previsão nos sinais de diferença de cor, e realiza o processo de previsão nos sinais de diferença de cor no modo de intraprevisão correspondente ao índice convertido. Concretamente, uma tabela de conversão para o índice pode ser preparada e a unidade de intraprevisão pode ser configurada para converter o índice pela referência à tabela de conversão, ou uma equação de conversão pode ser preparada antecipadamente e a unidade de intraprevisão pode ser configurada para converter o índice de acordo com a equação de conversão.
[00127] Em virtude de a unidade de intraprevisão ser configurada desta maneira, a unidade de intraprevisão pode realizar uma apropriada previsão nos sinais de diferença de cor de acordo com o formato do sinal YUV4:2:2 apenas pela realização da conversão do índice sem mudar o próprio processo de previsão direcional.
[00128] A unidade de compensação de movimento 35 realiza um processo de, quando o modo de codificação associado com o bloco de codificação determinado a partir da informação de particionamento de bloco decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intercodificação, realização de um processo de interprevisão (processo de previsão com movimento compensado) usando o vetor de movimento e o parâmetro de interprevisão que são emitidos a partir do comutador de seleção 33 ao mesmo tempo em que se refere a uma imagem decodificada armazenada em uma memória de quadro de previsão com movimento compensado 39, e geração de uma imagem de interprevisão.
[00129] Uma unidade de adição 36 realiza um processo de adição do sinal de diferença de previsão de decodificação calculado pela unidade de quantização inversa / transformação inversa 32 e da imagem de intraprevisão gerada pela unidade de intraprevisão 34 ou da imagem de interprevisão gerada pela unidade de compensação de movimento 35, para calcular uma imagem decodificada que é igual à imagem decodificada local emitida a partir da unidade de adição 9 mostrada na figura 1.
[00130] A memória 37 para intraprevisão é uma mídia de gravação que armazena a imagem decodificada calculada pelo adicionador 36 como uma imagem de referência usada para o processo de intraprevisão.
[00131] Uma unidade de filtro em malha 38 realiza um processo de filtragem predeterminado na imagem decodificada calculada pela unidade de adição 36, e realiza um processo de emissão da imagem decodificada processada por filtragem desse modo.
[00132] Concretamente, a unidade de filtro em malha realiza um processo de filtragem (filtragem de desbloqueio) para reduzir uma distorção que ocorre em um contorno entre blocos de transformação e uma distorção que ocorre em um contorno entre blocos de previsão, um processo (processo de deslocamento adaptativo de pixel) de adição adaptativa de um deslocamento em uma base por pixel, um processo de filtragem adaptativa de comutação adaptativa entre filtros lineares, tais como filtros Wiener e realização do processo de filtragem, e congêneres.
[00133] Para cada um dos supramencionados processos de filtragem, incluindo o processo de filtragem de desbloqueio, o processo de deslocamento adaptativo de pixel e o processo de filtragem adaptativa, a unidade de filtro em malha 38 refere-se a cada informação de cabeçalho decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 e especifica se realiza ou não o processo na fatia que é atualmente processada.
[00134] Neste momento, se, por exemplo, a unidade de filtro em malha 11 do dispositivo de codificação de imagem for configurada da forma mostrada na figura 11 durante a realização de dois ou mais processos de filtragem, a unidade de filtro em malha 38 é configurada da forma mostrada na figura 12. Certamente, se a unidade de filtro em malha 11 do dispositivo de codificação de imagem for configurada com o processo de filtragem de desbloqueio e o processo de deslocamento adaptativo de pixel, a unidade de filtro em malha 38 também é configurada com o processo de filtragem de desbloqueio e o processo de deslocamento adaptativo de pixel.
[00135] No processo de filtragem de desbloqueio, a unidade de filtro em malha refere-se à informação de cabeçalho decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 e, quando existir informação para trocar os vários parâmetros usados para a seleção da intensidade de um filtro aplicado em um contorno de bloco a partir de valores iniciais, realiza o processo de filtragem de desbloqueio com base na troca de informação. Quando nenhuma troca de informação existir, a unidade de filtro em malha realiza o processo de filtragem de desbloqueio de acordo com um método predeterminado.
[00136] No processo de deslocamento adaptativo de pixel, a unidade de filtro em malha particiona a imagem decodificada em blocos com base na informação de particionamento de bloco para o processo de deslocamento adaptativo de pixel, que é decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31, refere-se ao índice decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 e que indica o método de classificação de classe de cada um dos blocos em uma base por bloco e, quando o índice não indicar "não realizar o processo de deslocamento", realiza uma classificação de classe em cada pixel em cada um dos blocos de acordo com o método de classificação de classe indicado pelo supradescrito índice.
[00137] Como um candidato para o método de classificação de classe, um método que é igual a um candidato para o método de classificação de classe para o processo de deslocamento adaptativo de pixel na unidade de filtro em malha 11 é preparado antecipadamente.
[00138] A unidade de filtro em malha, então, refere-se à informação de deslocamento que especifica o valor de deslocamento calculado para cada classe em uma base por bloco, e realiza um processo de adição do deslocamento no valor de luminância da imagem decodificada.
[00139] Quando o processo de deslocamento adaptativo de pixel na unidade de filtro em malha 11 do dispositivo de codificação de imagem for configurado de uma maneira tal para, em vez da codificação da informação de particionamento de bloco, sempre particionar a imagem em blocos, cada qual com um tamanho fixo (por exemplo, maiores blocos de codificação), selecionar um método de classificação de classe para cada um dos blocos e realizar um processo de deslocamento adaptativo em uma base por classe, um processo de deslocamento adaptativo de pixel também é realizado na unidade de filtro em malha 38 para cada bloco que tem um tamanho fixo que é igual àquele da unidade de filtro em malha 11.
[00140] No processo de filtragem adaptativa, depois da realização de uma classificação de classe de acordo com o mesmo método que aquele usado pelo dispositivo de codificação de imagem da figura 1, a unidade de filtro em malha realiza o processo de filtragem pelo uso do filtro para cada classe, que é decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31, com base na informação sobre a classificação de classe.
[00141] A memória de quadro de previsão com movimento compensado 39 é uma mídia de gravação que armazena a imagem decodificada processada por filtragem pela unidade de filtro em malha 38 como uma imagem de referência usada para processo de interprevisão (processo de previsão com movimento compensado).
[00142] No exemplo mostrado na figura 3, a unidade de decodificação com comprimento variável 31, a unidade de quantização inversa / transformação inversa 32, o comutador de seleção 33, a unidade de intraprevisão 34, a unidade de compensação de movimento 35, o adicionador 36, a memória 37 para intraprevisão, a unidade de filtro em malha 38 e a memória de quadro de previsão com movimento compensado 39, que são os componentes do dispositivo de decodificação de imagem, são considerados como configurados com peças de hardware para uso exclusivo (por exemplo, circuitos integrados semicondutores em cada um dos quais uma CPU é montada, microcomputadores de um chip ou congêneres). Em um caso no qual o dispositivo de decodificação de imagem é configurado com um computador, um programa no qual os processos realizados pela unidade de decodificação com comprimento variável 31, pela unidade de quantização inversa / transformação inversa 32, pelo comutador de seleção 33, pela unidade de intraprevisão 34, pela unidade de compensação de movimento 35, pelo adicionador 36 e pela unidade de filtro em malha 38 são descritos pode ser armazenado em uma memória do computador e uma CPU do computador pode executar o programa armazenado na memória.
[00143] A figura 4 é um fluxograma que mostra o processamento (método de decodificação de imagem) realizado pelo dispositivo de decodificação de imagem de acordo com a modalidade 1 da presente invenção.
[00144] A seguir, operações serão explicadas.
[00145] Nesta modalidade 1, será explicado um caso no qual o dispositivo de codificação de imagem recebe cada imagem de quadro de um vídeo como uma imagem de entrada, realiza uma intraprevisão com base em pixels vizinhos já codificados ou uma previsão com movimento compensado entre quadros adjacentes, realiza um processo de compressão com transformação ortogonal e quantização em um sinal de diferença de previsão adquirido e, depois disto, realiza codificação com comprimento variável para gerar um fluxo contínuo de bits codificado, e o dispositivo de decodificação de imagem decodifica o fluxo contínuo de bits codificado emitido a partir do dispositivo de codificação de imagem.
[00146] O dispositivo de codificação de imagem mostrado na figura 1 é caracterizado em que o dispositivo é adaptado para trocas locais de um sinal de vídeo em uma direção do espaço e em uma direção do tempo, particionar o sinal de vídeo em blocos que têm vários tamanhos, e realizar codificação adaptativa intraquadro e interquadros.
[00147] No geral, sinais de vídeo têm características de sua complexidade variar localmente no espaço e no tempo. A partir do ponto de vista do espaço, um certo quadro de vídeo pode ter, por exemplo, um padrão que tem uma característica de sinal uniforme em uma região de imagem relativamente grande, tais como uma imagem céu ou uma imagem de parede, ou um padrão no qual um padrão que tem uma textura complicada em uma pequena região de imagem, tal como uma imagem de pessoa, ou uma imagem parada que inclui uma fina textura, também coexistem.
[00148] Também, a partir do ponto de vista do tempo, uma imagem do céu e uma imagem de parede têm uma pequena mudança local em uma direção do tempo em seus padrões, ao mesmo tempo em que uma imagem de uma pessoa ou objeto em movimento tem uma maior mudança temporal em virtude de seu contorno ter um movimento de um corpo rígido e um movimento de um rígido não corpo em relação ao tempo.
[00149] Embora um processo de geração de um sinal de diferença de previsão que tem pequena energia de sinal e pequena entropia pelo uso de uma previsão temporal e espacial, desse modo, reduzindo a íntegra da quantidade de código, seja realizado no processo de codificação, a quantidade de código dos parâmetros usados para a previsão pode ser reduzida desde que os parâmetros possam ser aplicados uniformemente em uma região do sinal da imagem tão grande quanto possível.
[00150] Por outro lado, em virtude de a quantidade de erros que ocorrem na previsão aumentar quando o mesmo parâmetro de previsão for aplicado em uma grande região de imagem em um padrão do sinal de imagem que tem uma grande mudança no tempo e no espaço, a quantidade de código do sinal de diferença de previsão aumenta.
[00151] Portanto, é desejável que, para uma região de imagem que tem uma grande mudança no tempo e no espaço, o tamanho de um bloco sujeito ao processo de previsão no qual o mesmo parâmetro de previsão é aplicado seja reduzido, desse modo, aumentando o volume de dados do parâmetro que é usado para a previsão e reduzindo a energia elétrica e a entropia do sinal de diferença de previsão.
[00152] Nesta modalidade 1, a fim de realizar codificação que é adaptada para as supradescritas características gerais de um sinal de vídeo, uma configuração é empregada na qual o processo de previsão e congêneres são iniciados, primeiro, a partir de um maior tamanho de bloco predeterminado, a região do sinal de vídeo é hierarquicamente particionada, e o processo de previsão e o processo de codificação na diferença de previsão são adaptados para cada uma das regiões particionadas.
[00153] O processamento realizado pelo dispositivo de codificação de imagem mostrado na figura 1 será explicado primeiro.
[00154] Primeiro, a unidade de controle de codificação 2 determina o estado de particionamento da fatia de uma imagem parada (imagem parada atual) que é o alvo a ser codificado, e também determina o tamanho de cada maior bloco de codificação que é usado para a codificação da imagem parada e o limite superior no número de camadas hierárquicas no momento em que cada maior bloco de codificação for hierarquicamente particionado em blocos (etapa ST1 da figura 2).
[00155] Como um método de determinação do tamanho de cada maior bloco de codificação, por exemplo, pode haver um método de determinação do mesmo tamanho para todas as imagens paradas de acordo com a resolução do sinal de vídeo da imagem inserida, e um método de quantificação de uma variação na complexidade de um movimento local do sinal de vídeo da imagem inserida como um parâmetro e, então, determinação de um pequeno tamanho para uma imagem parada que tem um vigoroso movimento durante a determinação de um grande tamanho para uma imagem parada que tem um pequeno movimento.
[00156] Como um método de determinação do limite superior no número de camadas hierárquicas particionadas, por exemplo, pode haver um método de determinação do mesmo número de camadas hierárquicas para todas as imagens paradas de acordo com a resolução do sinal de vídeo da imagem inserida, e um método de determinação de um maior número de camadas hierárquicas, de forma que um movimento mais fino possa ser detectado quando o sinal de vídeo da imagem inserida tiver um vigoroso movimento, durante a determinação de um menor número de camadas hierárquicas quando o sinal de vídeo da imagem inserida tiver um pequeno movimento.
[00157] O supradescrito tamanho de cada maior bloco de codificação e o limite superior no número de camadas hierárquicas nas quais cada maior bloco de codificação é hierarquicamente particionado podem ser codificados no cabeçalho no nível da sequência ou congêneres ou, em vez da codificação do tamanho e do número, o dispositivo de decodificação de imagem pode ser configurado de uma maneira tal para também realizar o mesmo processo de determinação.
[00158] No primeiro caso, a quantidade de código da informação de cabeçalho aumenta. Entretanto, em virtude de o dispositivo de decodificação de imagem não precisar realizar o supradescrito processo de determinação, a carga de processamento no dispositivo de decodificação de imagem pode ser reduzida e, além do mais, o dispositivo de codificação de imagem pode buscar e enviar um valor ideal.
[00159] No último caso, inversamente, embora a carga de processamento no dispositivo de decodificação de imagem aumente, já que o dispositivo de decodificação de imagem realiza o supradescrito processo de determinação, a quantidade de código da informação de cabeçalho não aumenta.
[00160] Adicionalmente, quando o supradescrito tamanho de cada maior bloco de codificação e o limite superior no número de camadas hierárquicas nas quais cada maior bloco de codificação é hierarquicamente particionado for codificado no cabeçalho no nível da sequência, o menor tamanho de bloco dos blocos de codificação, em vez do limite superior no número de camadas hierárquicas particionadas, pode ser codificado. Mais especificamente, em virtude de o tamanho de blocos que são adquiridos quando cada maior bloco de codificação for particionado até seu número de camadas hierárquicas particionadas alcançar o limite superior ser o menor tamanho de bloco dos blocos de codificação, o dispositivo de decodificação de imagem pode determinar o limite superior no número de camadas hierárquicas particionadas a partir do tamanho dos maiores blocos de codificação e o menor tamanho de bloco dos blocos de codificação.
[00161] A unidade de controle de codificação 2 também seleciona um modo de codificação correspondente a cada um dos blocos de codificação nos quais cada imagem inserida é hierarquicamente particionada a partir de um ou mais modos de codificação disponíveis (etapa ST2).
[00162] Mais especificamente, a unidade de controle de codificação 2 particiona hierarquicamente cada região de imagem que tem o maior tamanho do bloco de codificação em blocos de codificação, cada qual com um tamanho do bloco de codificação, até que o número de camadas hierárquicas particionadas alcance o limite superior que é determinado antecipadamente, e determina um modo de codificação para cada um dos blocos de codificação.
[00163] O modo de codificação é um de um ou mais modos de intracodificação (genericamente referidos como "INTRA") e um ou mais modos de intercodificação (genericamente referidos como "INTER"), e a unidade de controle de codificação 2 seleciona um modo de codificação correspondente a cada um dos blocos de codificação dentre todos os modos de codificação disponíveis na imagem parada que é atualmente processada ou um subconjunto destes modos de codificação.
[00164] Cada um dos blocos de codificação nos quais cada imagem inserida é hierarquicamente particionada pela unidade de particionamento de bloco 1, o que será mencionado a seguir, é adicionalmente particionado em um ou mais blocos de previsão, cada um dos quais sendo uma unidade na qual um processo de previsão deve ser realizado, e o estado do particionamento nos blocos de previsão também é incluído como informação no modo de codificação. Mais especificamente, o modo de codificação, que é um modo de intracodificação ou intercodificação, é um índice que identifica qual tipo dos blocos de previsão particionados são incluídos.
[00165] Embora uma explicação detalhada de um método de seleção de um modo de codificação para uso na unidade de controle de codificação 2 seja omitido a seguir em virtude de o método de seleção ser uma técnica conhecida, há um método de realização de um processo de codificação em cada bloco de codificação pelo uso de modos de codificação arbitrários disponíveis para examinar a eficiência de codificação, e seleção de um modo de codificação que tem o mais alto grau de eficiência de codificação dentre a pluralidade de modos de codificação disponíveis, por exemplo.
[00166] A unidade de controle de codificação 2 adicionalmente determina um parâmetro de quantização e um estado de particionamento do bloco de transformação, que são usados quando uma imagem de diferença for comprimida, para cada bloco de codificação, e também determina um parâmetro de previsão (parâmetro de intraprevisão ou parâmetro de interprevisão) que é usado quando um processo de previsão for realizado.
[00167] Quando cada bloco de codificação for adicionalmente particionado em blocos de previsão em cada um dos quais o processo de previsão deve ser realizado, um parâmetro de previsão (parâmetro de intraprevisão ou parâmetro de interprevisão) pode ser selecionado para cada um dos blocos de previsão.
[00168] A figura 20 é um desenho explicativo que mostra tamanhos do bloco de transformação no momento da realização do processo de compressão (o processo de transformação e o processo de quantização) no sinal de luminância e nos sinais de diferença de cor em um sinal no formato 4:2:0.
[00169] Os tamanhos do bloco de transformação são determinados pelo particionamento hierárquico de cada bloco de codificação em blocos em forma de árvore quaternária, da forma mostrada na figura 20.
[00170] Por exemplo, pela determinação se particiona ou não cada bloco de transformação com base na quantidade de código no caso de particionamento do bloco de transformação, na quantidade de código no caso de não particionamento do bloco de transformação e em um critério de avaliação que leva em consideração erros de codificação, etc. de uma maneira tal que um valor avaliado seja minimizado, uma forma particionada ideal do bloco de transformação pode ser determinada a partir do ponto de vista de uma proporcionalidade entre a quantidade de código e os erros de codificação.
[00171] O sinal de luminância é configurado, da forma mostrada, por exemplo, na figura 20, de uma maneira tal que cada bloco de codificação seja hierarquicamente particionado em um ou mais blocos de transformação quadrados.
[00172] Os sinais de diferença de cor são configurados, da forma mostrada na figura 20, de uma maneira tal que, quando o formato do sinal de entrada for o formato do sinal YUV4:2:0, cada bloco de codificação seja hierarquicamente particionado em um ou mais blocos de transformação quadrados, como o sinal de luminância. Neste caso, o tamanho do bloco de transformação de cada um dos sinais de diferença de cor é metade daquele do correspondente sinal de luminância nas direções tanto vertical quanto horizontal.
[00173] Da forma mostrada na figura 21, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, o mesmo particionamento hierárquico em blocos em forma de árvore quaternária que aquele no sinal de luminância é realizado. Adicionalmente, em virtude de a forma de cada bloco particionado ser um retângulo no qual o número de pixels na direção vertical é duas vezes maior que o número de pixels na direção horizontal, pelo particionamento adicional de cada bloco particionado em dois blocos na direção vertical, cada bloco particionado é feito para consistir em dois blocos de transformação que têm o mesmo tamanho de bloco que os sinais de diferença de cor em um sinal YUV 4:2:0 (um tamanho que é metade do tamanho nas direções tanto vertical quanto horizontal de cada bloco de transformação do sinal de luminância).
[00174] Adicionalmente, quando o formato do sinal de entrada for o formato do sinal YUV4:4:4, da forma mostrada na figura 22, o mesmo particionamento dos blocos de transformação do sinal de luminância é sempre realizado nos blocos de transformação de cada um dos sinais de diferença de cor, de uma maneira tal que os blocos de transformação sejam configurados para ter os mesmos tamanhos.
[00175] A unidade de controle de codificação 2 emite os parâmetros de codificação da diferença de previsão, incluindo a informação de particionamento do bloco de transformação que mostra a informação de particionamento sobre os blocos de transformação em cada bloco de codificação e o parâmetro de quantização que define o tamanho da etapa de quantização no momento da realização da quantização nos coeficientes de transformada, para a unidade de transformação / quantização 7, a unidade de quantização inversa / transformação inversa 8 e a unidade de codificação com comprimento variável 13.
[00176] A unidade de controle de codificação 2 também emite o parâmetro de intraprevisão para a unidade de intraprevisão 4 conforme necessário.
[00177] A unidade de controle de codificação 2 adicionalmente emite o parâmetro de interprevisão para a unidade de previsão com movimento compensado 5 conforme necessário.
[00178] Durante a recepção do sinal de vídeo como a imagem inserida, a unidade de particionamento de fatia 14 particiona a imagem inserida em uma ou mais fatias que são imagens parciais de acordo com a informação de particionamento de fatia determinada pela unidade de controle de codificação 2.
[00179] Toda vez durante a recepção de cada uma das fatias a partir da unidade de particionamento de fatia 14, a unidade de particionamento de bloco 1 particiona a fatia em blocos de codificação, cada qual com o maior tamanho do bloco de codificação determinado pela unidade de controle de codificação 2, e adicionalmente particiona cada um dos maiores blocos de codificação particionados em blocos de codificação hierarquicamente, estes blocos de codificação sendo determinados pela unidade de controle de codificação 2, e emite cada um dos blocos de codificação.
[00180] A figura 5 é um desenho explicativo que mostra um exemplo no qual cada maior bloco de codificação é hierarquicamente particionado em uma pluralidade de blocos de codificação.
[00181] Em relação à figura 5, cada maior bloco de codificação é um bloco de codificação cujo componente de luminância, que é mostrado por "0- ésima camada hierárquica", tem um tamanho de (L0, M0).
[00182] Pela realização do particionamento hierarquicamente com cada maior bloco de codificação sendo definido como um ponto de início até a profundidade da hierarquia alcançar uma profundidade predeterminada que é definida separadamente de acordo com uma estrutura de árvore quaternária, os blocos de codificação são adquiridos.
[00183] Na profundidade de n, cada bloco de codificação é uma região de imagem que tem um tamanho de (Ln, Mn).
[00184] Embora Ln possa ser o mesmo ou diferir de Mn, o caso de Ln = Mn é mostrado na figura 5.
[00185] A seguir, o tamanho do bloco de codificação determinado pela unidade de controle de codificação 2 é definido como o tamanho de (Ln, Mn) no componente de luminância de cada bloco de codificação.
[00186] Em virtude de particionamento de árvore quaternária ser realizado, (Ln + 1, Mn + 1) = (Ln / 2, Mn / 2) é sempre estabelecido.
[00187] No caso de um sinal de vídeo em cores (formato 4:4:4) no qual todos os componentes de cor têm o mesmo número de amostra, tal como um sinal RGB, todos os componentes de cor têm um tamanho de (Ln, Mn), ao mesmo tempo em que, no caso de tratamento do formato 4:2:0, um correspondente componente de diferença de cor tem um tamanho do bloco de codificação de (Ln / 2, Mn / 2).
[00188] A seguir, cada bloco de codificação na n-ésima camada hierárquica é expressado por Bn, e um modo de codificação selecionável para cada bloco de codificação Bn é expressado por m(Bn).
[00189] No caso de um sinal de vídeo em cores que consiste em uma pluralidade de componentes de cor, o modo de codificação m(Bn) pode ser configurado de uma maneira tal que um modo individual seja usado para cada componente de cor, ou pode ser configurado de uma maneira tal que um modo comum seja usado para todos os componentes de cor. A seguir, uma explicação será feita pela consideração que o modo de codificação indica um modo de codificação para o componente de luminância de cada bloco de codificação quando tiver o formato 4:2:0 em um sinal YUV, a menos que de outra forma especificado.
[00190] Cada bloco de codificação Bn é particionado em um ou mais blocos de previsão, cada qual representando uma unidade para o processo de previsão pela unidade de particionamento de bloco 1, da forma mostrada na figura 5.
[00191] A seguir, cada bloco de previsão que pertence a cada bloco de codificação Bn é expressado por Pin (i mostra um número do bloco de previsão na n-ésima camada hierárquica). Um exemplo de P00 e P10 é mostrado na figura 5.
[00192] Como o particionamento de cada bloco de codificação Bn em blocos de previsão é realizado é incluído como informação no modo de codificação m(Bn).
[00193] Ao mesmo tempo em que um processo de previsão é realizado em cada um de todos os blocos de previsão Pin de acordo com o modo de codificação m(Bn), um parâmetro de previsão individual (um parâmetro de intraprevisão ou um parâmetro de interprevisão) pode ser selecionado para cada bloco de previsão Pin.
[00194] A unidade de controle de codificação 2 gera um estado de particionamento de bloco como este, da forma mostrada na figura 6, para cada maior bloco de codificação e, então, especifica blocos de codificação.
[00195] Cada retângulo confinado por uma linha pontilhada da figura 6(a) mostra um bloco de codificação, e cada bloco cheio com linhas hachuradas em cada bloco de codificação mostra o estado de particionamento de cada bloco de previsão.
[00196] A figura 6(b) mostra uma situação em que um modo de codificação m(Bn) é atribuído a cada nó através do particionamento de camada hierárquica no exemplo da figura 6(a) pelo uso de um gráfico de árvore quaternária. Cada nó confinado por □ mostrado na figura 6(b) é um nó (bloco de codificação) no qual um modo de codificação m(Bn) é atribuído.
[00197] Informação sobre este gráfico de árvore quaternária é emitida a partir da unidade de controle de codificação 2 para a unidade de codificação com comprimento variável 13 juntamente com o modo de codificação m(Bn), e é multiplexada em um fluxo contínuo de bits.
[00198] Quando o modo de codificação m(Bn) determinado pela unidade de controle de codificação 2 for um modo de intracodificação (quando m(Bn) e INTRA), o comutador de seleção 3 emite o bloco de codificação Bn emitido a partir da unidade de particionamento de bloco 1 para a unidade de intraprevisão 4.
[00199] Ao contrário, quando o modo de codificação m(Bn) determinado pela unidade de controle de codificação 2 for um modo de intercodificação (quando m(Bn) e INTER), o comutador de seleção emite o bloco de codificação Bn emitido a partir da unidade de particionamento de bloco 1 para a unidade de previsão com movimento compensado 5.
[00200] Quando o modo de codificação m(Bn) determinado pela unidade de controle de codificação 2 for um modo de intracodificação (quando m(Bn) e INTRA), e a unidade de intraprevisão 4 receber o bloco de codificação Bn a partir do comutador de seleção 3 (etapa ST3), a unidade de intraprevisão 4 realiza o processo de intraprevisão em cada bloco de previsão Pin no bloco de codificação Bn pelo uso do parâmetro de intraprevisão determinado pela unidade de controle de codificação 2 ao mesmo tempo em que se refere à imagem decodificada local armazenada na memória 10 para intraprevisão, para gerar uma imagem de intraprevisão PINTRAin (etapa ST4).
[00201] Embora os detalhes sejam descritos a seguir, em virtude de pixels já codificados adjacentes ao bloco alvo para previsão serem usados durante a realização do processo de geração de uma imagem de intraprevisão, o processo de geração de uma imagem de intraprevisão deve ser sempre realizado em uma base por bloco de transformação, de uma maneira tal que os pixels adjacentes ao bloco alvo para previsão que são usados para o processo de previsão já tenham sido codificados.
[00202] Desta maneira, para um bloco de codificação no qual o modo de codificação é um modo de intracodificação, os tamanhos de bloco selecionáveis dos blocos de transformação são limitados aos tamanhos iguais ou menores que o tamanho dos blocos de previsão. Além do mais, quando cada bloco de transformação for menor que um bloco de previsão (quando uma pluralidade de blocos de transformação existir em um bloco de previsão), um processo de intraprevisão que usa o parâmetro de intraprevisão determinado para este bloco de previsão é realizado e o processo de geração de uma imagem de intraprevisão é realizado em uma base por bloco de transformação.
[00203] Em virtude de o dispositivo de decodificação de imagem precisar gerar uma imagem de intraprevisão que é completamente igual à imagem de intraprevisão PINTRAin, o parâmetro de intraprevisão usado para gerar a imagem de intraprevisão PINTRAin é emitido a partir da unidade de controle de codificação 2 para a unidade de codificação com comprimento variável 13, e é multiplexado no fluxo contínuo de bits.
[00204] Os detalhes do processamento realizado pela unidade de intraprevisão 4 serão mencionados a seguir.
[00205] Quando o modo de codificação m(Bn) determinado pela unidade de controle de codificação 2 for um modo de intercodificação (quando m(Bn) e INTER) e a unidade de previsão com movimento compensado 5 receber o bloco de codificação Bn a partir do comutador de seleção 3 (etapa ST3), a unidade de previsão com movimento compensado 5 compara cada bloco de previsão Pin no bloco de codificação Bn com a imagem decodificada local que é armazenada na memória de quadro de previsão com movimento compensado 12 e na qual o processo de filtragem é realizado, para buscar um vetor de movimento, e realiza o processo de interprevisão em cada bloco de previsão Pin no bloco de codificação Bn pelo uso tanto do vetor de movimento quanto do parâmetro de interprevisão determinados pela unidade de controle de codificação 2, para gerar uma imagem de interprevisão PINTERin (etapa ST5).
[00206] Em virtude de o dispositivo de decodificação de imagem precisar gerar uma imagem de interprevisão que é completamente igual à imagem de interprevisão PINTERin, o parâmetro de interprevisão usado para gerar a imagem de interprevisão PINTERin é emitido a partir da unidade de controle de codificação 2 para a unidade de codificação com comprimento variável 13, e é multiplexado no fluxo contínuo de bits.
[00207] O vetor de movimento que é buscado pela unidade de previsão com movimento compensado 5 também é emitido para a unidade de codificação com comprimento variável 13 e é multiplexado no fluxo contínuo de bits.
[00208] Durante a recepção do bloco de codificação Bn a partir da unidade de particionamento de bloco 1, a unidade de subtração 6 subtrai a imagem de intraprevisão PINTRAin gerada pela unidade de intraprevisão 4 ou a imagem de interprevisão PINTERin gerada pela unidade de previsão com movimento compensado 5 a partir do bloco de previsão Pin no bloco de codificação Bn, e emite um sinal de diferença de previsão ein que mostra uma imagem de diferença que é o resultado da subtração para a unidade de transformação / quantização 7 (etapa ST6).
[00209] Durante a recepção do sinal de diferença de previsão ein a partir da unidade de subtração 6, a unidade de transformação / quantização 7 refere-se à informação de particionamento do bloco de transformação incluída nos parâmetros de codificação da diferença de previsão determinados pela unidade de controle de codificação 2, e realiza um processo de transformação ortogonal (por exemplo, um processo de transformação ortogonal, tais como uma DCT (transformada discreta de cosseno), uma DST (transformada discreta de seno) ou uma transformada KL nas quais bases são desenhadas para uma sequência de aprendizado específica antecipadamente) no sinal de diferença de previsão ein em uma base por bloco de transformação, para calcular coeficientes de transformada.
[00210] A unidade de transformação / quantização 7 também se refere ao parâmetro de quantização incluído nos parâmetros de codificação da diferença de previsão e quantiza os coeficientes de transformada de cada bloco de transformação, e emite dados comprimidos que são os coeficientes de transformada quantizados desse modo para a unidade de quantização inversa / transformação inversa 8 e a unidade de codificação com comprimento variável 13 (etapa ST7). Neste momento, a unidade de transformação / quantização pode realizar o processo de quantização pelo uso de uma matriz de quantização para realizar escalonamento no tamanho da etapa de quantização calculado a partir do supradescrito parâmetro de quantização para cada coeficiente de transformada.
[00211] Como a matriz de quantização, uma matriz que é independente para cada sinal de crominância e para cada modo de codificação (intracodificação ou intercodificação) em cada tamanho de transformação ortogonal pode ser usada, e tanto a seleção de uma matriz de quantização a partir de uma matriz de quantização que é preparada, como um valor inicial, antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem ou uma matriz de quantização já codificada quanto o uso de uma nova matriz de quantização podem ser selecionados.
[00212] Portanto, a unidade de transformação / quantização 7 define informação do indicador que mostra se usa ou não uma nova matriz de quantização para cada sinal de crominância e para cada modo de codificação em cada tamanho de transformação ortogonal em um parâmetro da matriz de quantização a ser codificada.
[00213] Além do mais, quando uma nova matriz de quantização for usada, cada um dos valores de escalonamento na matriz de quantização, da forma mostrada na figura 10, é definido no parâmetro da matriz de quantização a ser codificada.
[00214] Ao contrário, quando uma nova matriz de quantização não for usada, um índice que especifica uma matriz a ser usada a partir de uma matriz de quantização que é preparada, como um valor inicial, antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem e uma matriz de quantização já codificada é definido no parâmetro da matriz de quantização a ser codificada. Entretanto, quando nenhuma matriz de quantização já codificada que pode ser referida existir, apenas uma matriz de quantização preparada antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem pode ser selecionada.
[00215] A unidade de transformação / quantização 7, então, emite o parâmetro da matriz de quantização definido desse modo para a unidade de codificação com comprimento variável 13.
[00216] Durante a recepção dos dados comprimidos a partir da unidade de transformação / quantização 7, a unidade de quantização inversa / transformação inversa 8 refere-se ao parâmetro de quantização e à informação de particionamento do bloco de transformação que são incluídos nos parâmetros de codificação da diferença de previsão determinados pela unidade de controle de codificação 2, e quantiza inversamente os dados comprimidos em uma base por bloco de transformação.
[00217] Quando a unidade de transformação / quantização 7 usar uma matriz de quantização para o processo de quantização, a unidade de quantização inversa / transformação inversa refere-se à matriz de quantização e realiza um correspondente processo de quantização inversa também no momento do processo de quantização inversa.
[00218] A unidade de quantização inversa / transformação inversa 8 também realiza um processo de transformação ortogonal inversa (por exemplo, uma DCT inversa, uma DST inversa, uma transformada KL inversa ou congêneres) nos coeficientes de transformada, que são os dados comprimidos inversamente quantizados, em uma base por bloco de transformação, e calcula um sinal de diferença de previsão de decodificação local correspondente ao sinal de diferença de previsão ein emitido a partir da unidade de subtração 6 e emite o sinal de diferença de previsão de decodificação local para a unidade de adição 9 (etapa ST8).
[00219] Durante a recepção do sinal de diferença de previsão de decodificação local a partir da unidade de quantização inversa / transformação inversa 8, a unidade de adição 9 calcula uma imagem decodificada local pela adição do sinal de diferença de previsão de decodificação local e tanto a imagem de intraprevisão PINTRAin gerada pela unidade de intraprevisão 4 quanto a imagem de interprevisão PINTERin gerada pela unidade de previsão com movimento compensado 5 (etapa ST9).
[00220] A unidade de adição 9 emite a imagem decodificada local para a unidade de filtro em malha 11 ao mesmo tempo em que armazena a imagem decodificada local na memória 10 para intraprevisão.
[00221] Esta imagem decodificada local é um sinal de imagem codificado que é usado no momento de subsequentes processos de intraprevisão.
[00222] Durante a recepção da imagem decodificada local a partir da unidade de adição 9, a unidade de filtro em malha 11 realiza o processo de filtragem predeterminado na imagem decodificada local, e armazena a imagem decodificada local processada por filtragem desse modo na memória de quadro de previsão com movimento compensado 12 (etapa ST10).
[00223] Concretamente, a unidade de filtro em malha realiza um processo de filtragem (filtragem de desbloqueio) para reduzir uma distorção que ocorre em um contorno entre blocos de transformação e uma distorção que ocorre em um contorno entre blocos de previsão, um processo (processo de deslocamento adaptativo de pixel) para adicionar de forma adaptativa um deslocamento em uma base por pixel, um processo de filtragem adaptativa para comutar de forma adaptativa entre filtros lineares, tais como filtros Wiener, e realização de um processo de filtragem, e congêneres.
[00224] A unidade de filtro em malha 11 determina se realiza ou não o processo para cada um dos supradescritos processos de filtragem, incluindo o processo de filtragem de desbloqueio, o processo de deslocamento adaptativo de pixel e o processo de filtragem adaptativa, e emite o indicador de habilitação de cada um dos processos, como uma parte do cabeçalho no nível da sequência e uma parte do cabeçalho no nível de fatia, para a unidade de codificação com comprimento variável 13. Durante o uso de dois ou mais dos supradescrito processos de filtragem, a unidade de filtro em malha realiza cada um dos processos de filtragem na ordem. A figura 11 mostra um exemplo da configuração da unidade de filtro em malha 11 no caso de uso de uma pluralidade de processos de filtragem.
[00225] No geral, ao mesmo tempo em que a qualidade da imagem é melhorada com o aumento no número de tipos de processos de filtragem usados, a carga de processamento é aumentada inversamente. Mais especificamente, há uma proporcionalidade entre a qualidade da imagem e a carga de processamento. Adicionalmente, o efeito de melhoria da qualidade da imagem de cada um dos processos de filtragem difere, dependendo das características da imagem que é o alvo para o processo de filtragem. Assim, o processo de filtragem a ser usado pode ser determinado de acordo com a carga de processamento aceitável para o dispositivo de codificação de imagem e as características da imagem na qual o processo de codificação deve ser realizado.
[00226] No processo de filtragem de desbloqueio, vários parâmetros usados para a seleção da intensidade de um filtro a ser aplicado em um contorno de bloco podem ser mudados a partir de valores iniciais. Durante a mudança de um parâmetro, o parâmetro é emitido para a unidade de codificação com comprimento variável 13 como informação de cabeçalho.
[00227] No processo de deslocamento adaptativo de pixel, a imagem é particionada em uma pluralidade de blocos primeiro, um caso de não realização do processo de deslocamento é definido como um método de classificação de classe para cada um dos blocos de codificação, e um método de classificação de classe é selecionado dentre uma pluralidade de métodos de classificação de classe que são preparados antecipadamente.
[00228] A seguir, pelo uso do método de classificação de classe selecionado, cada pixel incluído no bloco é classificado em uma das classes, e um valor de deslocamento para compensar uma distorção de codificação é calculado para cada uma das classes.
[00229] Finalmente, um processo de adição do valor de deslocamento no valor de brilho da imagem decodificada local é realizado, desse modo, melhorando a qualidade de imagem da imagem decodificada local.
[00230] Como o método de realização de uma classificação de classe, há um método (referido como um método BO) de classificação de cada pixel em uma das classes de acordo com o valor de brilho da imagem decodificada local, e um método (referido como um método EO) de classificação de cada pixel em uma das classes de acordo com o estado de uma região vizinha ao redor do pixel (por exemplo, se a região vizinha é uma porção da borda ou não) para cada uma das direções das bordas.
[00231] Estes métodos são preparados em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem. Por exemplo, da forma mostrada na figura 14, o caso de não realização do processo de deslocamento é definido como um método de classificação de classe, e um índice que indica qual destes métodos deve ser usado para realizar a classificação de classe é selecionado para cada um dos supradescritos blocos.
[00232] Portanto, no processo de deslocamento adaptativo de pixel, a informação de particionamento de bloco, o índice que indica o método de classificação de classe para cada bloco e a informação de deslocamento para cada bloco são emitidos para a unidade de codificação com comprimento variável 13 como informação de cabeçalho.
[00233] No processo de deslocamento adaptativo de pixel, por exemplo, a imagem pode ser sempre particionada em blocos, cada qual com um tamanho fixo, tais como maiores blocos de codificação, e um método de classificação de classe pode ser selecionado para cada um dos blocos e o processo de deslocamento adaptativo para cada classe pode ser realizado. Neste caso, a necessidade da supradescrita informação de particionamento de bloco pode ser eliminada, a quantidade de código pode ser reduzida pela quantidade de código exigida para a informação de particionamento de bloco, e a eficiência de codificação pode ser melhorada.
[00234] Adicionalmente, no processo de filtragem adaptativa, uma classificação de classe é realizada na imagem decodificada local pelo uso de um método predeterminado, um filtro para compensar uma distorção sobreposta na imagem é desenhado para cada região (imagem decodificada local) que pertence a cada classe, e o processo de filtragem desta imagem decodificada local é realizado pelo uso do filtro.
[00235] O filtro desenhado para cada classe é, então, emitido para a unidade de codificação com comprimento variável 13 como informação de cabeçalho.
[00236] Como o método de classificação de classe, há um simples método de particionamento da imagem em partes iguais espacialmente e um método de realização de uma classificação em uma base por bloco de acordo com as características locais (uma variância e congêneres) da imagem. Adicionalmente, o número de classes usadas no processo de filtragem adaptativa pode ser definido antecipadamente como um valor comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem, ou pode ser definido como um parâmetro a ser codificado.
[00237] Embora o efeito de melhoria da qualidade da imagem no último caso seja aprimorado, se comparado com aquele do primeiro caso, em virtude de o número de classes usadas no último caso poder ser definido livremente, a quantidade de código é aumentada conforme exigido para o número de classes em virtude de o número de classes ser codificado.
[00238] O dispositivo de codificação de vídeo realiza repetidamente os processos das etapas ST3 a ST9 até que o dispositivo de codificação de vídeo complete o processamento em todos os blocos de codificação Bn nos quais a imagem inserida é particionada hierarquicamente e, durante a conclusão do processamento em todos os blocos de codificação Bn, desloca para um processo da etapa ST13 (etapas ST11 e ST12).
[00239] A unidade de codificação com comprimento variável 13 codifica com comprimento variável os dados comprimidos emitidos a partir da unidade de transformação / quantização 7, a informação de particionamento de bloco sobre o interior de cada maior bloco de codificação, que é emitida a partir da unidade de controle de codificação 2 (a informação de árvore quaternária que é mostrada na figura 6(b) como um exemplo), o modo de codificação m(Bn) e os parâmetros de codificação da diferença de previsão, o parâmetro de intraprevisão (quando o modo de codificação for um modo de intracodificação) ou o parâmetro de interprevisão (quando o modo de codificação for um modo de intercodificação) que é emitido a partir da unidade de controle de codificação 2, e o vetor de movimento emitido a partir da unidade de previsão com movimento compensado 5 (quando o modo de codificação for um modo de intercodificação), e gera dados codificados que mostram estes resultados codificados (etapa ST13).
[00240] Neste momento, como um método de codificação dos dados comprimidos que são os coeficientes de transformação ortogonal quantizados, cada bloco de transformação é adicionalmente particionado em blocos (sub- blocos de codificação) de 4 x 4 pixels, cada um dos quais sendo chamado de um Grupo de Coeficiente (CG), e um processo de codificação dos coeficientes é realizado em uma base por CG.
[00241] A figura 15 mostra a ordem (ordem de escaneamento) de codificação dos coeficientes em cada bloco de transformação de 16 x 16 pixels.
[00242] Um processo de codificação de 16 CGs de 4 x 4 pixels é realizado na ordem a partir do CG no canto inferior direito desta maneira, e os 16 coeficientes em cada CG são adicionalmente codificados na ordem a partir do coeficiente no canto inferior direito.
[00243] Concretamente, informação do indicador que mostra se um coeficiente significativo (não zero) existe nos 16 coeficientes no CG é codificada primeiro, se cada coeficiente no CG é ou não um coeficiente significativo (não zero) é, então, codificado na supradescrita ordem apenas quando um coeficiente significativo (não zero) existir no CG e, para cada coeficiente significativo (não zero), informação sobre seu valor de coeficiente é finalmente codificado na ordem. Este processo é realizado na supradescrita ordem em uma base por CG.
[00244] Neste momento, é preferível configurar a ordem de escaneamento de uma maneira tal que coeficientes significativos (não zero) apareçam tão consecutivamente quanto possível, desse modo, sendo possível melhorar a eficiência de codificação de acordo com a codificação de entropia.
[00245] Em virtude de os coeficientes depois da transformação ortogonal, começando com o componente dc localizado no canto superior esquerdo, representarem os coeficientes dos componentes que têm uma frequência que diminui à medida que eles se aproximam do canto superior esquerdo e, portanto, no geral, coeficientes significativos (não zero) aparecerem mais frequentemente à medida que eles se aproximam do canto superior esquerdo, da forma mostrada no exemplo mostrado na figura 16, os coeficientes podem ser codificados eficientemente pela codificação dos mesmos na ordem a partir do coeficiente no canto inferior direito, da forma mostrada na figura 15.
[00246] Embora blocos de transformação 16 x 16 pixels sejam explicados no supradescrito exemplo, um processo de codificação para cada CG (sub-bloco de codificação) é considerado como realizado também nos blocos de transformação que têm um tamanho de bloco diferente de 16 x 16 pixels, tais como blocos de transformação de 8 x 8 ou 32 x 32 pixels.
[00247] A unidade de codificação com comprimento variável 13 também codifica cabeçalhos no nível da sequência e cabeçalhos no nível da imagem parada como a informação de cabeçalho de um fluxo contínuo de bits codificado, da forma ilustrada na figura 13, e gera um fluxo contínuo de bits codificado, bem como dados de imagem parada.
[00248] Dados de imagem parada consistem em um ou mais dados de fatia, e cada um dos dados de fatia é uma combinação de um cabeçalho no nível de fatia e dados codificados, da forma supramencionada, na fatia que é atualmente processada.
[00249] Um cabeçalho no nível da sequência é, no geral, uma combinação de peças de informação de cabeçalho que são comuns em uma base por sequência, as peças de informação de cabeçalho incluindo o tamanho da imagem, o formato do sinal de crominância, as profundidades de bit dos valores de sinal do sinal de luminância e dos sinais de diferença de cor, e a informação do indicador de habilitação sobre cada um dos processos de filtragem (o processo de filtragem adaptativa, o processo de deslocamento adaptativo de pixel e o processo de filtragem de desbloqueio) que são realizados em uma base por sequência pela unidade de filtro em malha 11, a informação do indicador de habilitação da matriz de quantização, um indicador que mostra se codificação de campo é realizada ou não, e congêneres.
[00250] Um cabeçalho no nível da imagem parada é uma combinação de peças de informação de cabeçalho que são definidas em uma base por imagem parada, as peças de informação de cabeçalho incluindo um índice de um cabeçalho no nível da sequência a ser referido, o número de imagens paradas de referência no momento da compensação de movimento, um indicador de inicialização da tabela de probabilidade para codificação de entropia e congêneres.
[00251] Um cabeçalho no nível de fatia é uma combinação dos parâmetros que são definidos em uma base por fatia, dos parâmetros que incluem informação de posição que mostra em qual posição da imagem parada a fatia que está sendo atualmente processada existe, de um índice que indica qual cabeçalho no nível da imagem parada deve ser referido, do tipo de codificação da fatia (todos intracodificação, intercodificação ou congêneres), da informação do indicador que mostra se realiza-se ou não cada um dos processos de filtragem na unidade de filtro em malha 11 (o processo de filtragem adaptativa, o processo de deslocamento adaptativo de pixel e o processo de filtragem de desbloqueio) e congêneres.
[00252] A seguir, o processo realizado pela unidade de intraprevisão 4 será explicado com detalhes.
[00253] A unidade de intraprevisão 4 refere-se ao parâmetro de intraprevisão de cada bloco de previsão Pin e realiza o processo de intraprevisão no bloco de previsão Pin para gerar uma imagem de intraprevisão PINTRAin, da forma supramencionada. A seguir, um processo intra de geração de uma imagem de intraprevisão de cada bloco de previsão Pin no sinal de luminância será explicado.
[00254] A figura 7 é um desenho explicativo que mostra um exemplo de modos de intraprevisão, cada um dos quais podendo ser selecionado para cada bloco de previsão Pin no bloco de codificação Bn, e mostra os valores de índice dos modos de intraprevisão e os vetores da direção da previsão respectivamente indicados pelos modos de intraprevisão. O valor de índice de cada um dos supradescritos modos de intraprevisão mostra o parâmetro de intraprevisão.
[00255] O número de modos de intraprevisão pode ser configurado para diferir de acordo com o tamanho do bloco que é o alvo para processamento.
[00256] Pela provisão de uma configuração na qual se faz com que o número de direções de intraprevisão que podem ser selecionadas seja pequeno para um bloco que tem um maior tamanho em virtude de a eficiência de intraprevisão degradar, enquanto se faz com que o número de direções de intraprevisão que podem ser selecionadas seja grande para um bloco que tem um menor tamanho, a quantidade de computações pode ser suprimida.
[00257] Primeiro, em virtude de o processo de geração de uma imagem de intraprevisão empregar um pixel já codificado adjacente ao bloco que é o alvo para processamento, o processo deve ser realizado em uma base por bloco de transformação, da forma supramencionada.
[00258] A seguir, um bloco de transformação para o qual uma imagem de intraprevisão deve ser gerada é referido como um bloco de geração da imagem de previsão. Portanto, a unidade de intraprevisão 4 realiza um processo de geração da imagem de intraprevisão, que será mencionado a seguir, em uma base por bloco de geração da imagem de previsão, para gerar uma imagem de intraprevisão do bloco de previsão Pin.
[00259] Considera-se que o tamanho de um bloco de geração da imagem de previsão é lin x min pixels.
[00260] A figura 8 é um desenho explicativo que mostra um exemplo de pixels que são usados durante a geração de um valor previsto de cada pixel no bloco de geração da imagem de previsão no caso de lin = min = 4.
[00261] Embora (2 x lin + 1) pixels já codificados localizados no topo do bloco de geração da imagem de previsão e (2 x min) pixels já codificados localizados à esquerda do bloco de geração da imagem de previsão sejam definidos como os pixels usados para previsão no exemplo da figura 8, o número de pixels usados para previsão pode ser maior ou menor que aquele dos pixels mostrados na figura 8.
[00262] Adicionalmente, embora uma linha ou uma coluna de pixels adjacentes ao bloco de geração da imagem de previsão sejam usadas para previsão no exemplo mostrado na figura 8, duas ou mais linhas ou colunas de pixels podem ser alternativamente usadas para previsão.
[00263] Quando o valor de índice que indica o modo de intraprevisão para o bloco de previsão Pin ao qual o bloco de geração da imagem de previsão pertence for 0 (previsão plana), pelo uso dos pixels já codificados adjacentes ao topo do bloco de geração da imagem de previsão e dos pixels já codificados adjacentes à esquerda do bloco de geração da imagem de previsão, a unidade de intraprevisão determina um valor interpolado de acordo com as distâncias entre estes pixels e o pixel alvo para previsão no bloco de geração da imagem de previsão como um valor previsto e gera uma imagem de previsão.
[00264] Quando o valor de índice que indica o modo de intraprevisão para o bloco de previsão Pin ao qual o bloco de geração da imagem de previsão pertence for 1 (previsão de valor médio (DC)), a unidade de intraprevisão determina o valor médio dos pixels já codificados adjacentes ao topo do bloco de geração da imagem de previsão e dos pixels já codificados adjacentes à esquerda do bloco de geração da imagem de previsão como o valor previsto de cada pixel no bloco de geração da imagem de previsão e gera uma imagem de previsão.
[00265] Além do mais, um processo de filtragem de uniformização de um contorno de bloco é realizado nas regiões A, B e C da figura 17 localizadas na borda superior e na borda esquerda do bloco de geração da imagem de previsão, e uma imagem de previsão final é gerada. Por exemplo, no caso do arranjo, da forma mostrada na figura 18, dos pixels de referência do filtro, de acordo com a seguinte equação (1), o processo de filtragem é realizado pelo uso dos seguintes coeficientes de filtro. • Região A (o pixel no canto superior esquerdo da partição Pin) a0 = 1/2, a1 = 1/4, a2 = 1/4 • Região B (os pixels na borda superior da partição Pin, exceto a Região A) a0 = 3/4, a2 = 1/4, (a1 = 0) • Região C (os pixels na borda esquerda da partição Pin, exceto a Região A) a0 = 3/4, a1 = 1/4, (a2 = 0)
[00266] Na equação (1), an (n = 0, 1, 2) denota o coeficiente de filtro pelo qual cada pixel de referência é multiplicado, pn (n = 0, 1, 2) denota cada pixel de referência do filtro, incluindo o pixel alvo p0 para o processo de filtragem, S'(p0) denota o valor previsto depois do processo de filtragem no pixel alvo p0 para o processo de filtragem, e S(pn) (n = 0, 1, 2) denota o valor previsto antes do processo de filtragem de cada pixel de referência, incluindo o pixel alvo p0 para o processo de filtragem.
[00267] Além do mais, o tamanho de bloco do bloco de geração da imagem de previsão no qual o supradescrito processo de filtragem deve ser realizado pode ser limitado.
[00268] No geral, em virtude de, quando o processo de filtragem for realizado apenas em uma borda de bloco para mudar o valor previsto, um bloco que tem um grande tamanho de bloco ter uma pequena razão de ocupação de uma região na qual o valor previsto varia devido ao processo de filtragem, uma mudança de um sinal residual de previsão que é causada por esta variação no valor previsto é expressada por um componente de frequência muito alta, e há uma tendência de que a degradação da eficiência de codificação seja causada em virtude da codificação deste componente de alta frequência. Adicionalmente, quando se impede que este componente de alta frequência seja codificado ao mesmo tempo em que se dá uma prioridade à eficiência de codificação, há uma tendência de que uma mudança do sinal residual de previsão de uma borda de bloco não possa ser restaurada e uma distorção seja causada em um contorno de bloco.
[00269] Por outro lado, em virtude de um bloco que tem um pequeno tamanho de bloco ter uma grande razão de ocupação de uma região na qual o valor previsto varia devido ao processo de filtragem, uma mudança do sinal residual de previsão que é causada por esta variação no valor previsto não é expressada por um componente de alta frequência como este, da forma mencionada no momento de um bloco que tem um grande tamanho de bloco, e o sinal residual pode ser codificado apropriadamente e a qualidade da imagem decodificada pode ser melhorada em uma extensão tal que a continuidade de um contorno de bloco seja melhorada pelo uso deste processo de filtragem.
[00270] Desta maneira, por exemplo, em vez da aplicação do supradescrito processo de filtragem nos blocos de geração da imagem de previsão que têm um tamanho de bloco de 32 x 32 pixels ou mais, pela aplicação do supradescrito processo de filtragem apenas nos blocos que têm um tamanho menor que 32 x 32 pixels, o aumento na quantidade de computações pode ser suprimido, ao mesmo tempo em que se melhora o desempenho da previsão, se comparado com aquele da previsão de valor médio convencional.
[00271] Além do mais, o tamanho de bloco do bloco de geração da imagem de previsão no qual o supradescrito processo de filtragem deve ser realizado pode ser limitado de acordo com o tamanho do bloco de transformação.
[00272] Por exemplo, o supradescrito processo de filtragem não é aplicado em blocos de geração da imagem de previsão que têm um tamanho de bloco igual a ou maior que max(16, MaxTUsize), mas o supradescrito processo de filtragem é aplicado apenas nos blocos que têm um tamanho menor que max(16, MaxTUsize).
[00273] max(α, β) mostra o máximo de α e β (por exemplo, quando α = 1 e β = 2, max(α, β) = 2), "MaxTUsize" mostra o maior tamanho do bloco de transformação que cada bloco de transformação pode ter, e "16" mostra um tamanho de bloco predeterminado (16 x 16 pixels).
[00274] Mais especificamente, no caso de não aplicação do supradescrito processo de filtragem nos blocos de geração da imagem de previsão que têm um tamanho de bloco igual a ou maior que max(16, MaxTUsize), mas aplicação do supradescrito processo de filtragem apenas nos blocos que têm um tamanho menor que max(16, MaxTUsize), quando MaxTUsize for 32, max(16, 32) = 32 e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 32 x 32 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 16 x 16 pixels, blocos de 8 x 8 pixels e blocos de 4 x 4 pixels.
[00275] Similarmente, quando MaxTUsize for 16, max(16, 16) = 16, e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 16 x 16 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 8 x 8 pixels e blocos de 4 x 4 pixels.
[00276] Além do mais, quando MaxTUsize for 8, max(16, 8) = 16, e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 16 x 16 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 8 x 8 pixels e blocos de 4 x 4 pixels. Portanto, quando MaxTUsize for 8, em que nenhum bloco de 16 x 16 pixels existe, o supradescrito processo de filtragem é realizado em todos os blocos de pixel (8 x 8 e 4 x 4).
[00277] Similarmente, quando MaxTUsize for 4, max(16, 4) = 16, e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 16 x 16 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 8 x 8 pixels e blocos de 4 x 4 pixels. Portanto, quando MaxTUsize for 4, em que apenas blocos de 4 x 4 pixels existem, o supradescrito processo de filtragem é realizado em todos os blocos de pixel (4 x 4).
[00278] Fazendo desta maneira, em virtude de um processo de transformação ortogonal com um tamanho tão grande quanto possível ser tipicamente realizado, por exemplo, em uma região invariável, tal como uma região do "céu" durante a realização de eficiente codificação, um processo de transformação com um tamanho de bloco de MaxTUsize é realizado em uma região como esta.
[00279] Por outro lado, em virtude de haver uma tendência de que, em um grande bloco como este, o processo de filtragem cause uma distorção em um contorno de bloco da imagem decodificada, como exposto, o processo de filtragem é impedido de ser realizado em uma porção invariável na qual a sensibilidade é particularmente alta como característica do sentido visual de um ser humano, a fim de suprimir uma distorção como esta, e o supradescrito processo de filtragem é realizado em um bloco que tem um pequeno tamanho de bloco, tal como uma região complicada na qual há uma tendência de que uma redução do tamanho de bloco torne possível realizar a codificação eficientemente, de forma que é provida uma vantagem de aumentar a eficiência de previsão e aumentar a qualidade da imagem decodificada.
[00280] Além do mais, quando um indicador que mostra se a codificação de campo é realizada ou não for provido para cada cabeçalho no nível da sequência e o supradescrito indicador for válido, o processo de filtragem não é realizado na borda superior do bloco de geração da imagem de previsão, da forma mostrada na figura 19.
[00281] No caso da codificação de campo, há uma possibilidade de que, em virtude de a correlação entre pixels na direção vertical ser baixa, a eficiência de previsão fica pior devido ao processo de filtragem na borda superior do bloco de geração da imagem de previsão. Portanto, pela realização do processo de filtragem apenas nas regiões A e C, e impedimento que o processo de filtragem seja realizado na região B, a quantidade de computações pode ser reduzida ao mesmo tempo em que uma redução da eficiência de previsão é impedida.
[00282] Embora, no supradescrito exemplo, o processo de filtragem seja realizado apenas nas regiões A e C quando o indicador de um cabeçalho no nível da sequência que mostra se a codificação de campo é realizada ou não for válido, o mesmo processo de filtragem da região C pode ser realizado, também, na região A. Assim, pelo não uso dos pixels na direção vertical com uma baixa correlação entre os pixels, a possibilidade de redução da eficiência de previsão pode ser adicionalmente diminuída, ao mesmo tempo em que a quantidade de computações exigidas para o processo de filtragem pode ser reduzida. Como uma alternativa, quando se dá importância a uma redução adicional da quantidade de computações, nenhum processo de filtragem pode ser realizado, também, na região A, e o processo de filtragem pode ser realizado apenas na região C.
[00283] Quando o valor de índice que indica o modo de intraprevisão para o bloco de previsão Pin ao qual o bloco de geração da imagem de previsão pertence for 26 (previsão vertical), a unidade de intraprevisão calcula o valor previsto de cada pixel no bloco de geração da imagem de previsão de acordo com a seguinte equação (2), e gera uma imagem de previsão.
[00284] Nesta equação, coordenadas (x, y) são coordenadas relativas (consulte a figura 9) adquiridas com o pixel no canto superior esquerdo no bloco de geração da imagem de previsão que é definido como o ponto de origem, S'(x, y) é o valor previsto nas coordenadas (x, y), e S(x, y) é o valor de brilho (valor de brilho decodificado) do pixel já codificado nas coordenadas (x, y). Adicionalmente, quando o valor previsto calculado exceder uma faixa de valores que o valor de brilho pode ter, o valor previsto é arredondado de uma maneira tal para cair na faixa.
[00285] Uma expressão na primeira linha da equação (2) significa que, pela adição de um valor que é a metade da quantidade de mudança (S(-1, y) - S(-1, -1)) na direção vertical dos valores de brilho de pixels já codificados adjacentes em S(x, -1) que é o valor previsto adquirido pela previsão vertical em MPEG-4 AVC/H.264, o processo de filtragem é realizado de uma maneira tal que um contorno de bloco seja uniformizado, e uma expressão na segundo linha da equação (2) mostra a mesma expressão de previsão que aquela para a previsão vertical em MPEG-4 AVC/H.264.
[00286] Quando o valor de índice que indica o modo de intraprevisão para o bloco de previsão Pin ao qual o bloco de geração da imagem de previsão pertence for 10 (previsão horizontal), a unidade de intraprevisão calcula o valor previsto de cada pixel no bloco de geração da imagem de previsão de acordo com a seguinte equação (3), e gera uma imagem de previsão.
[00287] Nesta equação, as coordenadas (x, y) são coordenadas relativas (consulte a figura 9) adquiridas com o pixel no canto superior esquerdo no bloco de geração da imagem de previsão que é definido como o ponto de origem, S'(x, y) é o valor previsto nas coordenadas (x, y), e S(x, y) é o valor de brilho (valor de brilho decodificado) do pixel já codificado nas coordenadas (x, y). Adicionalmente, quando o valor previsto calculado exceder uma faixa de valores que o valor de brilho pode ter, o valor previsto é arredondado de uma maneira tal para cair na faixa.
[00288] Uma expressão na primeira linha da equação (3) significa que, pela adição de um valor que é a metade da quantidade de mudança (S(x, -1) - S(-1, -1)) na direção horizontal dos valores de brilho de pixels já codificados adjacentes em S(-1, y) que é o valor previsto adquirido pela previsão horizontal em MPEG-4 AVC/H.264, o processo de filtragem é realizado de uma maneira tal que um contorno de bloco seja uniformizado, e uma expressão na segunda linha da equação (3) mostra a mesma expressão de previsão que aquela para a previsão horizontal em MPEG-4 AVC/H.264.
[00289] O tamanho de bloco do bloco de geração da imagem de previsão no qual a previsão vertical de acordo com a equação (2) e a previsão horizontal de acordo com a equação (3) devem ser realizadas pode ser limitado.
[00290] No geral, em virtude de, quando um processo de filtragem de adição de um valor proporcional à quantidade de mudança do valor de brilho na direção da previsão for realizado apenas em uma borda de bloco para mudar o valor previsto, um bloco que tem um grande tamanho de bloco ter uma pequena razão de ocupação de uma região na qual o valor previsto varia devido ao supradescrito processo de filtragem no borda de bloco do bloco de geração da imagem de previsão, uma mudança do sinal residual de previsão que é causada por esta variação no valor previsto é expressada por um componente de frequência muito alta, e há uma tendência de que degradação da eficiência de codificação seja causada em virtude da codificação deste componente de alta frequência. Adicionalmente, quando se impede que este componente de alta frequência seja codificado ao mesmo tempo em que se dá uma prioridade à eficiência de codificação, há uma tendência de que uma mudança do sinal residual de previsão de uma borda de bloco não possa ser restaurada e uma distorção seja causada em um contorno de bloco.
[00291] Por outro lado, em virtude de um bloco que tem um pequeno tamanho de bloco ter uma grande razão de ocupação de uma região na qual o valor previsto varia devido ao processo de filtragem, uma mudança do sinal residual de previsão que é causada por esta variação no valor previsto não é expressada por um componente de alta frequência como este, da forma mencionada no momento de um bloco que tem um grande tamanho de bloco, e o sinal residual pode ser codificado apropriadamente e a qualidade da imagem decodificada pode ser melhorada em uma extensão tal que a continuidade de um contorno de bloco seja aprimorada pelo uso deste processo de filtragem.
[00292] Desta maneira, por exemplo, para um bloco de geração da imagem de previsão que tem um tamanho de bloco de 32 x 32 pixels ou mais, sempre usando as expressões nas segundas linhas das equações (2) e (3) independente das coordenadas do pixel alvo para previsão (não realização do processo de filtragem nas bordas de bloco do bloco de geração da imagem de previsão), e aplicação das equações (2) e (3) de acordo com as quais o supradescrito processo de filtragem é realizado apenas em blocos que têm um tamanho menor que 32 x 32 pixels, o aumento na quantidade de computação pode ser suprimido ao mesmo tempo em que se melhora o desempenho da previsão, se comparado com aqueles das convencionais previsões vertical e horizontal.
[00293] Além do mais, o tamanho de bloco do bloco de geração da imagem de previsão no qual a previsão vertical de acordo com a equação (2) e a previsão horizontal de acordo com a equação (3) devem ser realizadas pode ser limitado de acordo com o tamanho do bloco de transformação.
[00294] Por exemplo, para um bloco de geração da imagem de previsão que tem um tamanho de bloco igual a ou maior que max(16, MaxTUsize), as expressões nas segundas linhas das equações (2) e (3) são sempre usadas independente das coordenadas do pixel alvo para previsão (o processo de filtragem nas bordas de bloco do bloco de geração da imagem de previsão não é realizado), e as equações (2) e (3) de acordo com as quais o supradescrito processo de filtragem é realizado são aplicadas apenas nos blocos que têm um tamanho menor que max(16, MaxTUsize).
[00295] max(α, β) mostra o máximo de α e β (por exemplo, quando α = 1 e β = 2, max(α, β) = 2), "MaxTUsize" mostra o maior tamanho do bloco de transformação que cada bloco de transformação pode ter, e "16" mostra um tamanho de bloco predeterminado (16 x 16 pixels).
[00296] Mais especificamente, no caso de não aplicação do supradescrito processo de filtragem nos blocos de geração da imagem de previsão que têm um tamanho de bloco igual a ou maior que max(16, MaxTUsize), mas aplicação do supradescrito processo de filtragem apenas em blocos que têm um tamanho menor que max(16, MaxTUsize), quando MaxTUsize for 32, max(16, 32) = 32 e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 32 x 32 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 16 x 16 pixels, blocos de 8 x 8 pixels e blocos de 4 x 4 pixels.
[00297] Similarmente, quando MaxTUsize for 16, max(16, 16) = 16, e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 16 x 16 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 8 x 8 pixels e blocos de 4 x 4 pixels.
[00298] Além do mais, quando MaxTUsize for 8, max(16, 8) = 16, e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 16 x 16 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 8 x 8 pixels e blocos de 4 x 4 pixels. Portanto, quando MaxTUsize for 8, em que nenhum bloco de 16 x 16 pixels existe, o supradescrito processo de filtragem é realizado em todos os blocos de pixel (8 x 8 e 4 x 4).
[00299] Similarmente, quando MaxTUsize for 4, max(16, 4) = 16, e, portanto, o impedimento da aplicação do supradescrito processo de filtragem é realizado apenas em blocos de 16 x 16 pixels, ao mesmo tempo em que o supradescrito processo de filtragem é realizado em blocos de 8 x 8 pixels e blocos de 4 x 4 pixels. Portanto, quando MaxTUsize for 4, em que apenas blocos de 4 x 4 pixels existem, o supradescrito processo de filtragem é realizado em todos os blocos de pixel (4 x 4).
[00300] Fazendo desta maneira, em virtude de um processo de transformação ortogonal com um tamanho tão grande quanto possível ser tipicamente realizado em uma região invariável, tal como uma região do "céu", por exemplo, durante a realização de eficiente codificação, um processo de transformação com um tamanho de bloco de MaxTUsize é realizado em uma região como esta.
[00301] Por outro lado, em virtude de haver uma tendência de que, em um grande bloco como este, o processo de filtragem cause uma distorção em um contorno de bloco da imagem decodificada, da forma supramencionada, o processo de filtragem é impedido de ser realizado em uma porção invariável na qual sua sensibilidade é particularmente alta como característica do sentido visual de um ser humano, a fim de suprimir uma distorção como esta e, pela realização do supradescrito processo de filtragem em um bloco que tem um pequeno tamanho de bloco, tal como uma região complicada na qual há uma tendência de que redução do tamanho de bloco torne possível realizar a codificação eficientemente, é provida uma vantagem de aprimorar a eficiência de previsão e aprimorar a qualidade da imagem decodificada.
[00302] Embora a supradescrita operação seja explicada quanto ao caso da previsão de valor médio, o caso da previsão horizontal e o caso da previsão vertical, as mesmas vantagens podem ser providas, também, quando uma previsão diferente destas previsões for usada.
[00303] Além do mais, quando o indicador que mostra se a codificação de campo é realizada ou não for provido para cada cabeçalho no nível da sequência e o supradescrito indicador for válido, uma equação (4) é usada, em vez da equação (3), para a previsão horizontal.
[00304] Mais especificamente, o processo de filtragem é impedido de ser realizado na borda superior do bloco de geração da imagem de previsão (no caso da previsão de valor médio e da previsão vertical, o processo de filtragem é realizado apenas na borda esquerda do bloco de geração da imagem de previsão, enquanto que, no caso da previsão horizontal, o processo de filtragem não é realizado), da forma mostrada na figura 19.
[00305] No caso da codificação de campo, há uma possibilidade de que, em virtude de a correlação entre pixels na direção vertical ser baixa, a eficiência de previsão fique pior devido a uma melhoria da continuidade de um contorno de bloco que é causada pelo processo de filtragem na borda superior do bloco de geração da imagem de previsão. Desta maneira, pela não realização do supradescrito processo de filtragem, a quantidade de computações pode ser reduzida, ao mesmo tempo em que uma redução da eficiência de previsão é impedida.
[00306] O indicador de um cabeçalho no nível da sequência que mostra se a codificação de campo é realizada ou não pode ser preparado em cada cabeçalho no nível da imagem parada, e a comutação LIGA / DESLIGA do processo de filtragem na borda superior do bloco de geração da imagem de previsão na previsão de valor médio (DC) e na previsão horizontal pode ser realizada de acordo com a correlação entre pixels na direção vertical de cada imagem parada.
[00307] Fazendo desta maneira, controle adaptativo em uma base por imagem parada pode ser implementado, e a eficiência de codificação pode ser melhorada. É necessário preparar o supradescrito indicador em cada cabeçalho no nível da imagem parada durante a implementação da codificação da comutação adaptativa entre a codificação de quadro e a codificação de campo em uma base por imagem parada.
[00308] Adicionalmente, embora o caso no qual o LIGA / DESLIGA do processo de filtragem na borda superior do bloco de geração da imagem de previsão seja comutado com base no indicador de um cabeçalho no nível da sequência ou um cabeçalho no nível da imagem parada que mostra se a codificação de campo é realizada ou não seja explicado nesta modalidade 1, um indicador que mostra se este processo de comutação é realizado ou não pode ser definido independentemente do indicador de um cabeçalho no nível da sequência ou um cabeçalho no nível da imagem parada que mostram se a codificação de campo é realizada ou não, e o LIGA / DESLIGA do processo de filtragem na borda superior do bloco de geração da imagem de previsão pode ser comutado com base neste indicador que mostra se o processo de comutação é realizado ou não.
[00309] Adicionalmente, embora a mudança da ordem de codificação explicada previamente e a supradescrita comutação do processo de filtragem sejam explicadas separadamente nesta modalidade 1, estes processos podem ser combinados e configurados.
[00310] Quando o valor de índice que indica um modo de intraprevisão for diferente de 0 (previsão plana), 1 (previsão de valor médio), 26 (previsão vertical) e 10 (previsão horizontal), a unidade de intraprevisão gera o valor previsto de cada pixel no bloco de geração da imagem de previsão com base no vetor da direção da previsão Up = (dx, dy) mostrado pelo valor de índice.
[00311] Da forma mostrada na figura 9, quando as coordenadas relativas de cada pixel no bloco de geração da imagem de previsão forem expressadas como (x, y) com o pixel no canto superior esquerdo do bloco de geração da imagem de previsão sendo definido como o ponto de origem, cada pixel de referência que é usado para previsão fica localizado em um ponto de interseção de L mostrado a seguir e um pixel adjacente.em que k é um número real negativo.
[00312] Quando um pixel de referência estiver em uma posição de pixel integral, o valor do pixel integral é determinado como o valor previsto do pixel alvo para previsão, enquanto que, quando um pixel de referência não estiver em uma posição de pixel integral, o valor de um pixel de interpolação gerado a partir de pixels integrais que são adjacentes ao pixel de referência é determinado como o valor previsto.
[00313] No exemplo mostrado na figura 8, em virtude de um pixel de referência não estar localizado em uma posição de pixel integral, o valor previsto é interpolado a partir dos valores de dois pixels adjacentes ao pixel de referência. A unidade de intraprevisão pode usar, em vez de apenas os dois pixels adjacentes, dois ou mais pixels adjacentes para gerar um pixel de interpolação e determinar o valor deste pixel de interpolação como o valor previsto.
[00314] Embora o aumento no número de pixels usados para o processo de interpolação proveja uma vantagem de melhoria da precisão da interpolação de um pixel de interpolação, em virtude de o grau de complexidade das computações exigidas para o processo de interpolação aumentar, é preferível gerar um pixel de interpolação a partir de um maior número de pixels em um caso no qual o dispositivo de codificação de imagem exige alto desempenho de codificação mesmo se a carga aritmética for grande.
[00315] Através do processo supradescrito, a unidade de intraprevisão gera pixels de previsão para todos os pixels do sinal de luminância no bloco de previsão Pin em uma base por bloco de geração da imagem de previsão, e emite uma imagem de intraprevisão PINTRAin.
[00316] O parâmetro de intraprevisão (modo de intraprevisão) usado para a geração da imagem de intraprevisão PINTRAin é emitido para a unidade de codificação com comprimento variável 13 a fim de multiplexar o parâmetro de intraprevisão no fluxo contínuo de bits.
[00317] Como no caso da realização de um processo de uniformização em um pixel de referência no momento da realização de uma intraprevisão em um bloco de 8 x 8 pixels em MPEG-4 AVC/H.264 explicado previamente, mesmo se a unidade de intraprevisão 4 for configurada de uma maneira tal que um pixel já codificado adjacente ao bloco de geração da imagem de previsão no qual um processo de uniformização é realizado seja provido como o pixel de referência no momento da geração de uma imagem de previsão do bloco de geração da imagem de previsão, o processo de filtragem que é igual àquele no supradescrito exemplo pode ser realizado na imagem de previsão. Fazendo desta maneira, o ruído do pixel de referência que é causado pelo processo de filtragem no pixel de referência pode ser removido, e a precisão da previsão pode ser melhorada pela realização da previsão pelo uso desta configuração.
[00318] Como uma alternativa, o supradescrito processo de filtragem no pixel de referência pode ser configurado para ser realizado apenas no momento de uma previsão que inclui a etapa de realizar o processo de filtragem na imagem de previsão, diferente da previsão de valor médio, da previsão vertical e da previsão horizontal. Fazendo desta maneira, a unidade de intraprevisão apenas precisa realizar um processo de filtragem no máximo para cada modo de previsão, e o aumento na quantidade de computações pode ser suprimido.
[00319] Embora o processo de geração de uma imagem de previsão do sinal de luminância seja explicado anteriormente, imagens de previsão para os componentes de diferença de cor são geradas como segue.
[00320] A unidade de intraprevisão realiza um processo de intraprevisão com base no parâmetro de intraprevisão (modo de intraprevisão) dos sinais de diferença de cor nos sinais de diferença de cor do bloco de previsão Pin, e emite o parâmetro de intraprevisão usado para a geração da imagem de intraprevisão para a unidade de codificação com comprimento variável 13.
[00321] A figura 23 é um desenho explicativo que mostra um exemplo de uma correspondência entre o parâmetro de intraprevisão (valor de índice) e um modo de intraprevisão da diferença de cor dos sinais de diferença de cor.
[00322] Quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar que o mesmo modo de previsão que o modo de intraprevisão para o sinal de luminância é usado (quando o parâmetro de intraprevisão mostrar o modo de intraprevisão comum entre a luminância e as diferenças de cor (modo DM)), a unidade de intraprevisão realiza a mesma previsão intraquadro que aquela do sinal de luminância, para gerar imagens de previsão dos sinais de diferença de cor.
[00323] Adicionalmente, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar o modo de previsão vertical ou o modo de previsão horizontal, a unidade de intraprevisão realiza uma previsão direcional nos sinais de diferença de cor para gerar imagens de previsão dos sinais de diferença de cor.
[00324] Adicionalmente, quando o parâmetro de intraprevisão do sinal de diferença de cor mostrar o modo de previsão do sinal de diferença de cor usando uma correlação de luminância (modo LM), a unidade de intraprevisão calcula um parâmetro de correlação que mostra a correlação entre o sinal de luminância e os sinais de diferença de cor pelo uso dos sinais de luminância e dos sinais de diferença de cor de uma pluralidade de pixels adjacentes aos lados superior e esquerdo de um bloco para o qual uma imagem de previsão deve ser gerada, e gera imagens de previsão a partir dos sinais de diferença de cor pelo uso tanto do parâmetro de correlação quanto do sinal de luminância associados com o bloco de cada um dos sinais de diferença de cor que é o alvo para o processo de previsão.
[00325] A unidade de intraprevisão pode ser configurada para realizar o processo no supradescrito modo DM ou no supradescrito modo LM e se impede de selecionar um outro modo de previsão quando o formato do sinal de entrada for o formato do sinal YUV4:4:4. Em virtude de haver uma alta correlação entre a posição da borda do sinal de luminância e aquelas dos sinais de diferença de cor em um sinal YUV4:4:4, pela proibição da aplicação de um modo de previsão diferente daquele aplicado no sinal de luminância nos sinais de diferença de cor, a quantidade de informação no modo de intraprevisão dos sinais de diferença de cor pode ser reduzida e a eficiência de codificação pode ser melhorada.
[00326] Certamente, a unidade de intraprevisão pode ser configurada para selecionar, para os sinais de diferença de cor, um modo de previsão direcional diferente daquele para o sinal de luminância, também, no caso de um sinal YUV4:4:4.
[00327] Adicionalmente, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, se o sinal de luminância for um bloco quadrado, da forma mostrada na figura 27, cada um dos sinais de diferença de cor é um bloco retangular no qual o número de pixels na direção horizontal é metade, se comparado com aquele do sinal de luminância. Portanto, a fim de aplicar uma previsão na mesma direção no sinal de luminância e nos sinais de diferença de cor quando um sinal YUV4:4:4 for convertido em um sinal YUV4:2:2, da forma mostrada na figura 28, a direção da previsão dos sinais de diferença de cor é configurada para diferir daquela do sinal de luminância no sinal YUV4:2:2 no caso de uma previsão direcional diferente da previsão vertical e da previsão horizontal.
[00328] Concretamente, quando o vetor da direção da previsão do sinal de luminância for expressado por vL = (dxL, dyL), da forma mostrada na figura 29, o vetor da direção da previsão de cada um dos sinais de diferença de cor é expressado por vC = (dxL / 2, dyL). Mais especificamente, quando o ângulo da direção da previsão for expressado por teta, da forma mostrada na figura 30, é necessário realizar uma previsão em uma direção da previsão que tem uma relação mostrada por tanθC = 2tanθL, em que o ângulo da direção da previsão do sinal de luminância é expressado por θL e o ângulo da direção da previsão de cada um dos sinais de diferença de cor é expressado por θC.
[00329] Portanto, a fim de tornar possível realizar corretamente o supradescrito modo DM no qual uma previsão na mesma direção é realizada no sinal de luminância e nos sinais de diferença de cor, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, a unidade de intraprevisão converte um índice do modo de intraprevisão que é usado para o sinal de luminância em um índice do modo de intraprevisão que é usado para a previsão nos sinais de diferença de cor, e realiza o processo de previsão nos sinais de diferença de cor de acordo com o modo de intraprevisão correspondente ao índice convertido.
[00330] A figura 31 mostra um exemplo da conversão do índice do modo de intraprevisão no modo de intraprevisão da figura 7.
[00331] A tabela de conversão da figura 31 é um exemplo de uma tabela para realizar conversão em um ângulo θC que é o mais próximo da seguinte relação: tanθC = 2tanθL no caso de um ângulo no qual a previsão direcional no modo de intraprevisão é dada por tanθ mostrado na figura 32, em que o ângulo da direção da previsão é expressado por teta (consulte a figura 30).
[00332] A implementação do processo de conversão pode ser configurada de uma maneira tal que uma tabela de conversão para o índice seja preparada e a unidade de intraprevisão converta o índice pela referência à tabela de conversão, como exposto, ou uma equação de conversão seja preparada e a unidade de intraprevisão converta o índice de acordo com a equação de conversão.
[00333] Em virtude de a unidade de intraprevisão ser configurada desta maneira, a unidade de intraprevisão pode realizar uma apropriada previsão nos sinais de diferença de cor de acordo com o formato do sinal YUV4:2:2 apenas pela realização da conversão do índice sem mudar o próprio processo de previsão direcional.
[00334] Adicionalmente, a unidade de intraprevisão pode ser configurada de uma maneira tal para se impedir de realizar o supradescrito modo LM nos sinais de diferença de cor. Como um exemplo da correspondência entre o parâmetro de intraprevisão (valor de índice) e o modo de intraprevisão da diferença de cor dos sinais de diferença de cor neste momento, um exemplo da figura 24 é provido.
[00335] Em virtude, por assim configurar a unidade de intraprevisão de uma maneira tal para não usar o modo LM, também, a dependência entre o sinal de luminância e os sinais de diferença de cor do pixel alvo para previsão ser eliminada, paralelização do processo de previsão no sinal de luminância e aquele nos sinais de diferença de cor é habilitada, e processamento aritmético em alta velocidade pode ser implementado.
[00336] Além do mais, quanto à previsão vertical e à previsão horizontal nos sinais de diferença de cor, o mesmo método de previsão que aquele em MPEG-4 AVC/H.264 pode ser usado sem realizar o processo de filtragem em um contorno de bloco. Pela não realização do processo de filtragem desta maneira, uma redução da quantidade de computações do processo de previsão pode ser alcançada.
[00337] A seguir, o processamento realizado pelo dispositivo de decodificação de imagem mostrado na figura 3 será explicado concretamente.
[00338] Durante a recepção do fluxo contínuo de bits codificado gerado pelo dispositivo de codificação de imagem da figura 1, a unidade de decodificação com comprimento variável 31 realiza o processo de decodificação com comprimento variável no fluxo contínuo de bits (etapa ST21 da figura 4), e decodifica a informação de cabeçalho (cabeçalho no nível da sequência) sobre cada sequência que consiste em um ou mais quadros de imagens paradas e a informação de cabeçalho (cabeçalho no nível da imagem parada) sobre cada imagem parada, o parâmetro de filtro para uso na unidade de filtro em malha 38, e o parâmetro da matriz de quantização.
[00339] Neste momento, quando a informação do indicador de habilitação da matriz de quantização incluída na supradescrita informação de cabeçalho mostrar "habilitado", a unidade de decodificação com comprimento variável 31 decodifica com comprimento variável o parâmetro da matriz de quantização e especifica a matriz de quantização.
[00340] Concretamente, para cada sinal de crominância e para cada modo de codificação em cada tamanho de transformação ortogonal, quando o parâmetro da matriz de quantização mostrar que tanto uma matriz de quantização que é preparada, como um valor inicial, antecipadamente e em comum entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem, quanto uma matriz de quantização já decodificada é usada (nenhuma nova matriz de quantização é usada), o dispositivo de decodificação de imagem refere-se à informação de índice incluída no parâmetro da matriz de quantização e que especifica qual matriz de quantização das supradescritas matrizes é usada, para especificar a matriz de quantização, e, quando o parâmetro da matriz de quantização mostrar que uma nova matriz de quantização é usada, especifica, como a matriz de quantização a ser usada, a matriz de quantização incluída no parâmetro da matriz de quantização.
[00341] O dispositivo de decodificação de imagem, então, decodifica a informação de cabeçalho sobre cada fatia (cabeçalho no nível de fatia), tal como a informação de particionamento de fatia, a partir de cada um dos dados de fatia que constrói os dados sobre cada imagem parada, e decodifica os dados codificados sobre cada fatia.
[00342] A unidade de decodificação com comprimento variável 31 também determina o maior tamanho do bloco de codificação e o limite superior no número de camadas hierárquicas particionadas que são determinados pela unidade de controle de codificação 2 do dispositivo de codificação de imagem mostrado na figura 1, de acordo com o mesmo procedimento do dispositivo de codificação de imagem (etapa ST22).
[00343] Por exemplo, quando o maior tamanho do bloco de codificação e o limite superior no número de camadas hierárquicas particionadas forem determinados de acordo com a resolução do sinal de vídeo, o maior tamanho do bloco de codificação é determinado com base na informação do tamanho de quadro decodificada de acordo com o mesmo procedimento do dispositivo de codificação de imagem.
[00344] Quando o maior tamanho do bloco de codificação e o limite superior no número de camadas hierárquicas particionadas forem multiplexados no cabeçalho no nível da sequência ou congêneres pelo dispositivo de codificação de imagem, os valores decodificados do supradescrito cabeçalho são usados. Quando o menor tamanho de bloco dos blocos de codificação, em vez do limite superior no número de camadas hierárquicas particionadas, for codificado, o limite superior no número de camadas hierárquicas particionadas é determinado pela decodificação deste tamanho. Mais especificamente, o número de camadas hierárquicas no caso de particionamento de cada maior bloco de codificação em blocos que têm o supradescrito menor tamanho de bloco é o limite superior no número de camadas hierárquicas particionadas.
[00345] A unidade de decodificação com comprimento variável 31 decodifica o estado de particionamento de um maior bloco de codificação, da forma mostrada na figura 6, para cada maior bloco de codificação determinado. Com base no estado de particionamento decodificado, a unidade de decodificação com comprimento variável determina blocos de codificação hierarquicamente (etapa ST23).
[00346] A unidade de decodificação com comprimento variável 31, então, decodifica o modo de codificação atribuído a cada bloco de codificação. A unidade de decodificação com comprimento variável particiona adicionalmente cada bloco de codificação em um ou mais blocos de previsão, cada um dos quais sendo uma unidade para o processo de previsão, com base na informação incluída no modo de codificação decodificado, e decodifica o parâmetro de previsão atribuído a cada um dos um ou mais blocos de previsão (etapa ST24).
[00347] Mais especificamente, quando o modo de codificação atribuído a um bloco de codificação for um modo de intracodificação, a unidade de decodificação com comprimento variável 31 decodifica o parâmetro de intraprevisão para cada um dos um ou mais blocos de previsão que são incluídos no bloco de codificação e cada um dos quais sendo uma unidade para o processo de previsão.
[00348] Ao contrário, quando o modo de codificação atribuído a um bloco de codificação for um modo de intercodificação, a unidade de decodificação com comprimento variável decodifica o parâmetro de interprevisão e o vetor de movimento para cada um dos um ou mais blocos de previsão que são incluídos no bloco de codificação e cada um dos quais é uma unidade para o processo de previsão (etapa ST24).
[00349] A unidade de decodificação com comprimento variável 31 adicionalmente decodifica os dados comprimidos (coeficientes de transformada transformados e quantizados) para cada bloco de transformação com base na informação de particionamento do bloco de transformação incluída nos parâmetros de codificação da diferença de previsão (etapa ST24).
[00350] Neste momento, a unidade de decodificação com comprimento variável realiza um processo de decodificação dos coeficientes de cada CG da mesma maneira que a unidade de codificação com comprimento variável 13 do dispositivo de codificação de imagem da figura 1 realiza o processo de codificação dos dados comprimidos.
[00351] Portanto, da forma mostrada na figura 15, a unidade de decodificação com comprimento variável realiza um processo de decodificação de 16 CGs de 4 x 4 pixels na ordem a partir do CG no canto inferior direito, e adicionalmente decodifica os 16 coeficientes em cada CG na ordem a partir do coeficiente no canto inferior direito.
[00352] Concretamente, a informação do indicador que mostra se um coeficiente significativo (não zero) existe nos 16 coeficientes no CG é decodificada primeiro, se cada coeficiente no CG é ou não um coeficiente significativo (não zero) é, então, decodificado na supradescrita ordem apenas quando a informação do indicador decodificada mostrar que um coeficiente significativo (não zero) existe no CG e, para cada coeficiente que mostra um coeficiente significativo (não zero), informação sobre o valor de coeficiente é finalmente decodificada na ordem. Este processo é realizado na supradescrita ordem em uma base por CG.
[00353] Quando o modo de codificação m(Bn) decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intracodificação (quando m(Bn) e INTRA), o comutador de seleção 33 emite o parâmetro de intraprevisão de cada bloco de previsão, que é decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31, para a unidade de intraprevisão 34.
[00354] Ao contrário, quando o modo de codificação m(Bn) decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intercodificação (quando m(Bn) e INTER), o comutador de seleção emite o parâmetro de interprevisão e o vetor de movimento de cada bloco de previsão, que são decodificados com comprimento variável pela unidade de decodificação com comprimento variável 31, para a unidade de compensação de movimento 35.
[00355] Quando o modo de codificação m(Bn) decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intracodificação (m(Bn) e INTRA) (etapa ST25), a unidade de intraprevisão 34 recebe o parâmetro de intraprevisão de cada bloco de previsão emitido a partir do comutador de seleção 33, e realiza um processo de intraprevisão em cada bloco de previsão Pin no bloco de codificação Bn usando o supradescrito parâmetro de intraprevisão ao mesmo tempo em que se refere à imagem decodificada armazenada na memória 37 para intraprevisão, para gerar uma imagem de intraprevisão PINTRAin, de acordo com o mesmo procedimento da unidade de intraprevisão 4 mostrado na figura 1 (etapa ST26).
[00356] Quando o indicador que mostra se a codificação de campo é realizada ou não for provido para o cabeçalho no nível da sequência decodificado pela unidade de decodificação com comprimento variável 31 e o supradescrito indicador for válido, o processo de filtragem é impedido de ser realizado na borda superior do bloco de geração da imagem de previsão na previsão de valor médio (DC) e na previsão horizontal, como no caso do dispositivo de codificação de imagem da figura 1. Fazendo desta maneira, a mesma imagem de previsão do fluxo contínuo de bits codificado gerada pelo dispositivo de codificação de imagem da figura 1 pode ser gerada.
[00357] Quando o indicador de um cabeçalho no nível da sequência que mostra se a codificação de campo é realizada ou não for preparado para um cabeçalho no nível da imagem parada no dispositivo de codificação de imagem da figura 1, de acordo com o valor deste indicador, neste cabeçalho no nível da imagem parada, que mostra se a codificação de campo é realizada ou não, a comutação LIGA / DESLIGA do processo de filtragem na borda superior do bloco de geração da imagem de previsão na previsão de valor médio (DC) e na previsão horizontal é realizada em uma base por imagem parada.
[00358] Fazendo desta maneira, a mesma imagem de previsão que aquela do fluxo contínuo de bits codificado gerada pelo dispositivo de codificação de imagem da figura 1 que é configurado da forma supradescrita pode ser gerada.
[00359] Adicionalmente, quanto ao sinal de luminância, a unidade de intraprevisão 34 realiza o processo de intraprevisão (processo de previsão intraquadro) usando o supradescrito parâmetro de intraprevisão no sinal de luminância, para gerar uma imagem de previsão do sinal de luminância.
[00360] Por outro lado, quanto aos sinais de diferença de cor, a unidade de intraprevisão realiza o processo de intraprevisão com base no parâmetro de intraprevisão dos sinais de diferença de cor, para gerar imagens de previsão dos sinais de diferença de cor.
[00361] A figura 23 é um desenho explicativo que mostra um exemplo da correspondência entre o parâmetro de intraprevisão (valor de índice) e o modo de intraprevisão da diferença de cor dos sinais de diferença de cor.
[00362] Quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar que o mesmo modo de previsão que o modo de intraprevisão para o sinal de luminância é usado (quando o parâmetro de intraprevisão mostrar o modo de intraprevisão comum entre a luminância e as diferenças de cor (modo DM)), a unidade de intraprevisão realiza a mesma previsão intraquadro que aquela do sinal de luminância para gerar imagens de previsão dos sinais de diferença de cor.
[00363] Adicionalmente, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar o modo de previsão vertical ou o modo de previsão horizontal, a unidade de intraprevisão realiza uma previsão direcional nos sinais de diferença de cor para gerar imagens de previsão dos sinais de diferença de cor.
[00364] Adicionalmente, quando o parâmetro de intraprevisão dos sinais de diferença de cor mostrar o modo de previsão do sinal de diferença de cor usando uma correlação de luminância (modo LM), a unidade de intraprevisão calcula um parâmetro de correlação que mostra a correlação entre o sinal de luminância e os sinais de diferença de cor pelo uso dos sinais de luminância e dos sinais de diferença de cor de uma pluralidade de pixels adjacentes aos lados superior e esquerdo de um bloco para o qual uma imagem de previsão deve ser gerada, e gera imagens de previsão a partir dos sinais de diferença de cor pelo uso tanto do parâmetro de correlação quanto do sinal de luminância associados com o bloco de cada um dos sinais de diferença de cor que é o alvo para o processo de previsão.
[00365] No caso no qual o dispositivo de codificação de imagem for configurado para realizar o processo no supradescrito modo DM ou no supradescrito modo LM e se impedir de selecionar um outro modo de previsão quando o formato do sinal de entrada for o formato do sinal YUV4:4:4, o dispositivo de decodificação de imagem é similarmente configurado de uma maneira tal para poder decodificar o fluxo contínuo de bits codificado gerado pelo dispositivo de codificação de imagem.
[00366] Em virtude de haver uma alta correlação entre a posição da borda do sinal de luminância e aquelas dos sinais de diferença de cor em um sinal YUV4:4:4, pela proibição da aplicação de um modo de previsão diferente daquele aplicado no sinal de luminância nos sinais de diferença de cor, a quantidade de informação no modo de intraprevisão dos sinais de diferença de cor pode ser reduzida e a eficiência de codificação pode ser melhorada.
[00367] Adicionalmente, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, se o sinal de luminância for um bloco quadrado, da forma mostrada na figura 27, cada um dos sinais de diferença de cor é um bloco retangular no qual o número de pixels na direção horizontal é metade, se comparado com aquele do sinal de luminância. Portanto, a fim de aplicar uma previsão na mesma direção no sinal de luminância e nos sinais de diferença de cor quando um sinal YUV4:4:4 for convertido em um sinal YUV4:2:2, da forma mostrada na figura 28, a direção da previsão dos sinais de diferença de cor é configurada para diferir daquela do sinal de luminância no sinal YUV4:2:2 no caso de uma previsão direcional diferente da previsão vertical e da previsão horizontal.
[00368] Concretamente, quando o vetor da direção da previsão do sinal de luminância for expressado por vL = (dxL, dyL), da forma mostrada na figura 29, o vetor da direção da previsão de cada um dos sinais de diferença de cor é expressado por vC = (dxL / 2, dyL). Mais especificamente, quando o ângulo da direção da previsão for expressado por teta, da forma mostrada na figura 30, é necessário realizar uma previsão em uma direção da previsão que tem uma relação mostrada por tanθC = 2tanθL, em que o ângulo da direção da previsão do sinal de luminância é expressado por θL e o ângulo da direção da previsão de cada um dos sinais de diferença de cor é expressado por θC.
[00369] Portanto, a fim de tornar possível realizar corretamente o supradescrito modo DM no qual uma previsão na mesma direção é realizada no sinal de luminância e nos sinais de diferença de cor, quando o formato do sinal de entrada for o formato do sinal YUV4:2:2, a unidade de intraprevisão converte um índice do modo de intraprevisão que é usado para o sinal de luminância em um índice do modo de intraprevisão que é usado para a previsão nos sinais de diferença de cor, e realiza o processo de previsão nos sinais de diferença de cor de acordo com o modo de intraprevisão correspondente ao índice convertido.
[00370] A figura 31 mostra um exemplo da conversão do índice do modo de intraprevisão no modo de intraprevisão da figura 7.
[00371] A tabela de conversão da figura 31 é um exemplo de uma tabela para realizar conversão em um ângulo θC que é o mais próximo da seguinte relação: tanθC = 2tanθL no caso de um ângulo no qual a previsão direcional no modo de intraprevisão é dada por tanθ mostrado na figura 32, em que o ângulo da direção da previsão é expressado por teta (consulte a figura 30).
[00372] A implementação do processo de conversão pode ser configurada de uma maneira tal que a tabela de conversão para o índice seja preparada e a unidade de intraprevisão converta o índice pela referência à tabela de conversão, como exposto, ou uma equação de conversão seja preparada e a unidade de intraprevisão converta o índice de acordo com a equação de conversão.
[00373] Em virtude de a unidade de intraprevisão ser configurada desta maneira, a unidade de intraprevisão pode realizar uma apropriada previsão nos sinais de diferença de cor de acordo com o formato do sinal YUV4:2:2 apenas pela realização da conversão do índice sem mudar o próprio processo de previsão direcional.
[00374] Adicionalmente, no caso em que o dispositivo de codificação de imagem for configurado de uma maneira tal para se impedir de realizar o supradescrito modo LM nos sinais de diferença de cor, o dispositivo de decodificação de imagem é similarmente configurado de uma maneira tal para poder decodificar o fluxo contínuo de bits codificado gerado pelo dispositivo de codificação de imagem.
[00375] Como um exemplo da correspondência entre o parâmetro de intraprevisão (valor de índice) e o modo de intraprevisão da diferença de cor dos sinais de diferença de cor neste momento, o exemplo da figura 24 é provido.
[00376] Em virtude de assim configurar a unidade de intraprevisão de uma maneira tal para não usar o modo LM, também, a dependência entre o sinal de luminância e os sinais de diferença de cor do pixel alvo para previsão é eliminada, a paralelização do processo de previsão no sinal de luminância e aquele nos sinais de diferença de cor é habilitada e o processamento aritmético em alta velocidade pode ser implementado.
[00377] Além do mais, no caso em que o dispositivo de codificação de imagem for configurado de uma maneira tal para, quanto à previsão vertical e à previsão horizontal nos sinais de diferença de cor, usar o mesmo método de previsão que aquele em MPEG-4 AVC/H.264 sem realizar o processo de filtragem em um contorno de bloco, o dispositivo de decodificação de imagem é similarmente configurado de uma maneira tal para poder decodificar o fluxo contínuo de bits codificado gerado pelo dispositivo de codificação de imagem.
[00378] Pela não realização do processo de filtragem desta maneira, uma redução da quantidade de computações do processo de previsão pode ser alcançada.
[00379] Quando o modo de codificação m(Bn) decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 for um modo de intercodificação (m(Bn) e INTER) (etapa ST25), a unidade de compensação de movimento 35 recebe o vetor de movimento e o parâmetro de interprevisão de cada bloco de previsão que são emitidos a partir do comutador de seleção 33, e realiza um processo de interprevisão em cada bloco de previsão Pin no bloco de codificação Bn usando o vetor de movimento e o parâmetro de interprevisão ao mesmo tempo em que se refere à imagem decodificada que é armazenada na memória de quadro de previsão com movimento compensado 39 e na qual o processo de filtragem é realizado, para gerar uma imagem de interprevisão PINTERin (etapa ST27).
[00380] Durante a recepção dos dados comprimidos e dos parâmetros de codificação da diferença de previsão a partir da unidade de decodificação com comprimento variável 31, a unidade de quantização inversa / transformação inversa 32 refere-se ao parâmetro de quantização e à informação de particionamento do bloco de transformação que são incluídos nos parâmetros de codificação da diferença de previsão e quantiza inversamente os dados comprimidos em uma base por bloco de transformação de acordo com o mesmo procedimento da unidade de quantização inversa / transformação inversa 8 mostrada na figura 1.
[00381] Neste momento, a unidade de quantização inversa / transformação inversa refere-se a cada informação de cabeçalho decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 e, quando esta informação de cabeçalho mostrar que o processo de quantização inversa deve ser realizado na fatia que é atualmente processada pelo uso da matriz de quantização, realiza o processo de quantização inversa pelo uso da matriz de quantização.
[00382] Neste momento, a unidade de quantização inversa / transformação inversa refere-se a cada informação de cabeçalho decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 para especificar a matriz de quantização a ser usado para cada um dos sinais de crominância e para cada modo de codificação (intracodificação ou intercodificação) em cada tamanho de transformação ortogonal.
[00383] A unidade de quantização inversa / transformação inversa 32 também realiza um processo de transformação ortogonal inversa nos coeficientes de transformada, que são os dados comprimidos inversamente quantizados desse modo, em uma base por bloco de transformação, para calcular um sinal de diferença de previsão decodificado que é igual ao sinal de diferença de previsão de decodificação local emitido a partir da unidade de quantização inversa / transformação inversa 8 mostrada na figura 1 (etapa ST28).
[00384] A unidade de adição 36 adiciona o sinal de diferença de previsão decodificado calculado pela unidade de quantização inversa / transformação inversa 32 e tanto a imagem de intraprevisão PINTRAin gerada pela unidade de intraprevisão 34 quanto a imagem de interprevisão PINTERin gerada pela unidade de compensação de movimento 35 para calcular uma imagem decodificada e emite a imagem decodificada para a unidade de filtro em malha 38, e também armazena a imagem decodificada na memória 37 para intraprevisão (etapa ST29).
[00385] Esta imagem decodificada é um sinal da imagem decodificada que é usado no momento dos subsequentes processos de intraprevisão.
[00386] Durante a conclusão dos processos das etapas ST23 a ST29 em todos os blocos de codificação Bn (etapa ST30), a unidade de filtro em malha 38 realiza um processo de filtragem predeterminado na imagem decodificada emitida a partir da unidade de adição 36, e armazena a imagem decodificada processada por filtragem desse modo na memória de quadro de previsão com movimento compensado 39 (etapa ST31).
[00387] Concretamente, a unidade de filtro em malha realiza um processo de filtragem (filtragem de desbloqueio) para reduzir uma distorção que ocorre em um contorno entre blocos de transformação e uma distorção que ocorre em um contorno entre blocos de previsão, um processo (processo de deslocamento adaptativo de pixel) para adicionar de forma adaptativa um deslocamento em uma base por pixel, um processo de filtragem adaptativa para comutação adaptativa entre filtros lineares, tais como filtros Wiener, e realização de um processo de filtragem, e congêneres.
[00388] Entretanto, para cada um dos supradescritos processos de filtragem, incluindo o processo de filtragem de desbloqueio, o processo de deslocamento adaptativo de pixel e o processo de filtragem adaptativa, a unidade de filtro em malha 38 refere-se a cada informação de cabeçalho decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 para especificar se realiza ou não o processo na fatia que é atualmente processada.
[00389] Neste momento, no caso em que a unidade de filtro em malha 11 do dispositivo de codificação de imagem for configurada da forma mostrada na figura 11, por exemplo, durante a realização de dois ou mais processos de filtragem, a unidade de filtro em malha 38 é configurada da forma mostrada na figura 12.
[00390] No processo de filtragem de desbloqueio, a unidade de filtro em malha refere-se à informação de cabeçalho decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31 e, quando existir informação para trocar os vários parâmetros usados para a seleção da intensidade de um filtro aplicado em um contorno de bloco a partir de valores iniciais, realiza o processo de filtragem de desbloqueio com base na troca de informação. Quando nenhuma troca de informação existir, a unidade de filtro em malha realiza o processo de filtragem de desbloqueio de acordo com um método predeterminado.
[00391] No processo de deslocamento adaptativo de pixel, a unidade de filtro em malha particiona a imagem decodificada em blocos com base na informação de particionamento de bloco para o processo de deslocamento adaptativo de pixel, que é decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31, refere-se ao índice decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31 e que indica o método de classificação de classe de cada um dos blocos em uma base por bloco e, quando o índice não indicar "não realiza o processo de deslocamento", realiza uma classificação de classe em cada pixel em cada um dos blocos de acordo com o método de classificação de classe indicado pelo supradescrito índice.
[00392] Como candidatos para o método de classificação de classe, os mesmos candidatos que aqueles para o método de classificação de classe do processo de deslocamento adaptativo de pixel realizado pela unidade de filtro em malha 11 são preparados antecipadamente.
[00393] A unidade de filtro em malha 38, então, refere-se à informação de deslocamento que especifica o valor de deslocamento calculado para cada classe em uma base por bloco e decodificada com comprimento variável pela unidade de decodificação com comprimento variável 31, e realiza um processo de adição do deslocamento no valor de brilho da imagem decodificada.
[00394] No processo de filtragem adaptativa, depois da realização de uma classificação de classe de acordo com o mesmo método que aquele usado pelo dispositivo de codificação de imagem da figura 1, a unidade de filtro em malha realiza o processo de filtragem pelo uso do filtro para cada classe, que é decodificado com comprimento variável pela unidade de decodificação com comprimento variável 31, com base na informação sobre a classificação de classe.
[00395] A imagem decodificada na qual o processo de filtragem é realizado por esta unidade de filtro em malha 38 é provida como uma imagem de referência para previsão com movimento compensado, e é determinada como uma imagem reproduzida.
[00396] Como pode ser visto a partir da descrição exposta, em virtude de o dispositivo de codificação de imagem de acordo com esta modalidade 1 ser configurado de uma maneira tal para gerar um fluxo contínuo de bits codificado que pode ser corretamente reproduzido a partir do mesmo campo em todos os momentos independente da posição de início da decodificação do fluxo contínuo de bits codificado, também, na codificação do par de campos de um vídeo entrelaçado, um dispositivo de exibição que exibe uma imagem decodificada apenas precisa ser configurado de uma maneira tal para sempre exibir o mesmo campo primeiro independente da posição de início da decodificação do fluxo contínuo de bits codificado, também, na codificação do par de campos de um vídeo entrelaçado, e é provida uma vantagem de ser capaz de facilmente realizar o processo de exibição.
[00397] Adicionalmente, de acordo com esta modalidade 1, é provida uma vantagem de ser capaz de decodificar corretamente o fluxo contínuo de bits codificado que pode ser corretamente reproduzido em todos os momentos a partir do mesmo campo independente da posição de início da decodificação do fluxo contínuo de bits codificado, também, na decodificação do par de campos de um vídeo entrelaçado.
[00398] Embora a invenção tenha sido descrita em sua modalidade preferida, deve-se entender que várias mudanças podem ser feitas em um componente arbitrário de acordo com a modalidade, e um componente arbitrário de acordo com a modalidade pode ser omitido no escopo da invenção.
APLICABILIDADE INDUSTRIAL
[00399] Da forma supramencionada, em virtude de o dispositivo de codificação de imagem, o método de codificação de imagem, o dispositivo de decodificação de imagem e o método de decodificação de imagem de acordo com a presente invenção tornarem possível gerar e codificar um fluxo contínuo de bits codificado que pode ser reproduzido em todos os momentos a partir do mesmo campo independente da posição de início da decodificação do fluxo contínuo de bits codificado, também, na codificação do par de campos de um vídeo entrelaçado, eles são úteis em um dispositivo de codificação de vídeo, um dispositivo de decodificação de vídeo, etc.
EXPLICAÇÃO DOS NÚMEROS DE REFERÊNCIA
[00400] 1 unidade de particionamento de bloco, 2 unidade de controle de codificação, 3 comutador de seleção, 4 unidade de intraprevisão (intraprevisor), 5 unidade de previsão com movimento compensado, 6 unidade de subtração, 7 unidade de transformação / quantização, 8 unidade de quantização inversa / transformação inversa, 9 unidade de adição, 10 memória para intraprevisão, 11 unidade de filtro em malha, 12 memória de quadro de previsão com movimento compensado, 13 unidade de codificação com comprimento variável, 14 unidade de particionamento de fatia, 31 unidade de decodificação com comprimento variável, 32 unidade de quantização inversa / transformação inversa, 33 comutador de seleção, 34 unidade de intraprevisão (intraprevisor), 35 unidade de compensação de movimento, 36 unidade de adição, 37 memória para intraprevisão, 38 unidade de filtro em malha e 39 memória de quadro de previsão com movimento compensado.

Claims (4)

1. Dispositivo de codificação de imagem que codifica cada campo como uma imagem parada, cada quadro de um vídeo entrelaçado consistindo em dois campos: um primeiro campo e um segundo campo, em que o primeiro campo é um campo superior e o segundo campo é um campo inferior, o dispositivo de codificação de imagem caracterizado pelo fato de que compreende: um ajustador de codificação (2) configurado para fazer o ajuste para codificar um primeiro campo de um quadro específico como uma intraimagem parada que é prevista pelo uso apenas de uma intraprevisão, em que o primeiro campo é ajustado para ser uma imagem de Ponto de Acesso não Intra-Aleatório, não-IRAP, e codificar o primeiro campo do quadro específico apenas pelo uso de uma intraprevisão, o segundo campo do quadro específico, como uma imagem parada posterior, uma imagem parada cuja ordem de codificação é posterior àquela do segundo campo do quadro específico e cuja ordem de exibição é anterior àquela do segundo campo, como uma imagem parada anterior, e uma imagem parada cuja ordem de codificação e, também, a ordem de exibição são posteriores àquelas do segundo campo do quadro específico, como outra imagem parada posterior, na ordem destas imagens paradas, em que o segundo campo é codificado imediatamente após o primeiro campo; e um multiplexador (13) configurado para multiplexar informação que mostra que o primeiro campo do quadro específico é uma imagem parada, em um fluxo contínuo de bits, na qual decodificação pode ser iniciada no fluxo contínuo de bits, em que o ajustador de codificação está configurado ainda para proibir a configuração de uma imagem cuja ordem de exibição é anterior àquela do primeiro campo do quadro específico, como uma imagem parada de referência para interprevisão, para as imagens paradas posteriores , de modo a permitir apenas figuras cuja ordem de exibição seja posterior àquela do primeiro campo do quadro específico como uma imagem parada de referência para interpredição para as imagens paradas posteriores.
2. Método de codificação de imagem para codificar cada campo como uma imagem parada, cada quadro de um vídeo entrelaçado consistindo em dois campos: um primeiro campo e um segundo campo, em que o primeiro campo é um campo superior e o segundo campo é um campo inferior, o método de codificação de imagem caracterizado pelo fato de que compreende: uma etapa de ajustar a codificação para fazer um ajuste para codificar um primeiro campo de um quadro específico como uma intraimagem parada que é prevista pelo uso apenas de uma intraprevisão, em que o primeiro campo é ajustado para ser uma imagem de Ponto de Acesso não Intra-Aleatório, não-IRAP, e codificar o primeiro campo do quadro específico, o segundo campo do quadro específico como uma imagem parada posterior, uma imagem parada cuja ordem de codificação é posterior àquela do segundo campo do quadro específico e cuja ordem de exibição é anterior àquela do segundo campo como uma imagem parada anterior, e uma imagem parada cuja ordem de codificação e, também, a ordem de exibição são posteriores àquelas do segundo campo do quadro específico posterior como outra imagem parada posterior, na ordem destas imagens paradas, em que o segundo campo é codificado imediatamente após o primeiro campo; e uma etapa de multiplexação para multiplexar informação que mostra que o primeiro campo do quadro específico é uma imagem parada, em um fluxo contínuo de bits, na qual decodificação pode ser iniciada no fluxo contínuo de bits, em que a etapa de ajuste de codificação inclui uma etapa de proibir a configuração de uma imagem parada cuja ordem de exibição é anterior àquela do primeiro campo do quadro específico, como uma imagem parada de referência para interprevisão, para o as imagens paradas posteriores, de modo a permitir apenas imagens paradas cuja ordem de exibição seja posterior àquela do primeiro campo do quadro específico como uma imagem parada de referência para interprevisão para as imagens paradas posteriores.
3. Dispositivo de decodificação de imagem, caracterizado pelo fato de que compreende: um decodificador (31) configurado para decodificar um fluxo contínuo de bits no qual cada quadro de um vídeo entrelaçado consiste em dois campos: um primeiro campo e um segundo campo, em que o primeiro campo é um campo superior e o segundo campo é um campo inferior, e cada um dos campos é codificado como uma imagem parada, em que o primeiro campo de um quadro específico é ajustado para ser uma imagem de Ponto de Acesso não Intra-Aleatório, não-IRAP, e é codificado apenas pelo uso de uma intraprevisão, e adquire informação que mostra que o primeiro campo do quadro específico é uma imagem parada não-IRAP, no fluxo contínuo de bits, na qual decodificação pode ser iniciada, e que, durante o início da decodificação do primeiro campo do quadro específico especificado pela informação, decodifica imagens paradas cujas ordens de exibição são posteriores a do primeiro campo do quadro específico por decodificar o primeiro campo do quadro específico, o segundo campo do quadro específico como uma imagem parada posterior, e uma imagem parada cuja ordem de decodificação e também a ordem de exibição são posteriores àquelas do segundo campo de quadro específico como outra imagem parada posterior, na ordem daquelas imagens paradas, em que o decodificador é ainda configurado para proibir a configuração de uma imagem cuja ordem de exibição seja anterior àquela do primeiro campo do quadro específico, como uma imagem de referência para interprevisão, para as imagens posteriores, de modo a permitir apenas imagens cuja ordem de exibição seja posterior àquela do primeiro campo do quadro específico como uma imagem de referência para interprevisão para as imagens posteriores.
4. Método de decodificação de imagem, caracterizado pelo fato de que compreende: uma etapa de decodificação para decodificar um fluxo contínuo de bits no qual cada quadro de um vídeo entrelaçado consiste em dois campos: um primeiro campo e um segundo campo, em que o primeiro campo é um campo superior e o segundo campo é um campo inferior, e cada um dos campos é codificado como uma imagem parada, em que o primeiro campo de um quadro específico é ajustado para ser uma imagem de Ponto de Acesso não Intra-Aleatório, não-IRAP, e é codificado apenas pelo uso de uma intrapredição, e adquirir informação que mostra que o primeiro campo do quadro específico é uma imagem parada não-IRAP, no fluxo contínuo de bits, na qual decodificação pode ser iniciada, e, quando iniciar a decodificação do primeiro campo do quadro específico especificado pela informação, decodificar imagens paradas cujas ordens de exibição são posteriores àquela do primeiro campo do quadro específico ao decodificar o primeiro campo do quadro específico, o segundo campo do quadro específico como uma imagem parada posterior e uma imagem parada cuja ordem de decodificação e também a ordem de exibição são posteriores àquelas do segundo campo de quadro específico como outra imagem parada posterior na ordem daquelas imagens paradas, em que a decodificação é realizada da seguinte forma: proibição da configuração de uma imagem cuja ordem de exibição seja anterior à do primeiro campo do quadro específico, como uma imagem de referência para interprevisão, para as imagens, de modo a permitir apenas imagens cuja ordem de exibição seja posterior àquela do primeiro campo do quadro específico como uma imagem de referência para interprevisão para as imagens posteriores.
BR112015030508-3A 2013-06-12 2014-06-11 Dispositivos e métodos de codificação de imagem e de decodificação de imagem BR112015030508B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2013123391 2013-06-12
JP2013-123391 2013-06-12
JP2013-174670 2013-08-26
JP2013174670 2013-08-26
PCT/JP2014/003107 WO2014199634A1 (ja) 2013-06-12 2014-06-11 画像符号化装置、画像符号化方法、画像復号装置及び画像復号方法

Publications (2)

Publication Number Publication Date
BR112015030508A2 BR112015030508A2 (pt) 2017-07-25
BR112015030508B1 true BR112015030508B1 (pt) 2023-11-07

Family

ID=52021946

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112015030508-3A BR112015030508B1 (pt) 2013-06-12 2014-06-11 Dispositivos e métodos de codificação de imagem e de decodificação de imagem

Country Status (7)

Country Link
US (1) US10034019B2 (pt)
EP (1) EP3010232A4 (pt)
JP (4) JP6022060B2 (pt)
KR (1) KR101728285B1 (pt)
CN (1) CN105325000B (pt)
BR (1) BR112015030508B1 (pt)
WO (1) WO2014199634A1 (pt)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5680812B1 (ja) * 2013-07-05 2015-03-04 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置
US10142638B2 (en) * 2013-10-11 2018-11-27 Electronics And Telecommunications Research Institute Method for encoding/decoding image and device using same
US10560710B2 (en) * 2014-01-03 2020-02-11 Qualcomm Incorporated Method for coding recovery point supplemental enhancement information (SEI) messages and region refresh information SEI messages in multi-layer coding
WO2015192990A1 (en) * 2014-06-18 2015-12-23 Telefonaktiebolaget L M Ericsson (Publ) Dependent random access point pictures
KR20160105203A (ko) * 2015-02-27 2016-09-06 삼성전자주식회사 멀티미디어 코덱, 상기 멀티미디어 코덱을 포함하는 애플리케이션 프로세서, 및 상기 애플리케이션 프로세서의 동작 방법
WO2018150934A1 (ja) * 2017-02-20 2018-08-23 ソニー株式会社 画像処理装置および方法
WO2018168484A1 (ja) * 2017-03-15 2018-09-20 ソニー株式会社 符号化装置、符号化方法、復号装置、及び、復号方法
US10764582B2 (en) * 2017-06-29 2020-09-01 Qualcomm Incorporated Reducing seam artifacts in 360-degree video
KR200486759Y1 (ko) 2017-08-31 2018-06-27 김종문 기능성 칫솔
WO2019065537A1 (ja) * 2017-09-28 2019-04-04 シャープ株式会社 動き補償フィルタ装置、画像復号装置および動画像符号化装置
JP2019149753A (ja) * 2018-02-28 2019-09-05 株式会社Jvcケンウッド 画像復号化装置、画像復号化方法及び画像復号化プログラム
US11956471B2 (en) * 2018-12-20 2024-04-09 Telefonaktiebolaget Lm Ericsson (Publ) Normative indication of recovery point
WO2020171230A1 (en) * 2019-02-24 2020-08-27 Sharp Kabushiki Kaisha Systems and methods for signaling types of pictures and associated information in video coding
WO2020185879A1 (en) 2019-03-11 2020-09-17 Dolby Laboratories Licensing Corporation Video coding using reference picture resampling supporting region of interest
CN114666594A (zh) 2019-03-11 2022-06-24 杜比实验室特许公司 帧速率可伸缩视频编码
EP3975566A4 (en) * 2019-05-20 2022-08-03 Panasonic Intellectual Property Corporation of America ENCODING DEVICE, DECODING DEVICE, ENCODING METHOD, AND DECODING METHOD
CN114208202A (zh) 2019-08-06 2022-03-18 杜比实验室特许公司 画布尺寸可伸缩的视频编码
CN113132734B (zh) * 2019-12-31 2023-05-26 杭州海康威视数字技术股份有限公司 一种编码、解码方法、装置及其设备
CN113329269A (zh) * 2020-02-28 2021-08-31 杭州海康威视数字技术股份有限公司 视频编码、解码方法、装置、电子设备及存储介质
CN112752104B (zh) * 2021-04-06 2021-06-08 浙江华创视讯科技有限公司 图像补偿方法、装置、存储介质及电子设备

Family Cites Families (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3187097B2 (ja) * 1991-10-17 2001-07-11 株式会社東芝 動画像符号化における符号量配分方法とこれを用いた動画像符号化方法及び装置
US5317397A (en) 1991-05-31 1994-05-31 Kabushiki Kaisha Toshiba Predictive coding using spatial-temporal filtering and plural motion vectors
JP3356413B2 (ja) * 1992-12-14 2002-12-16 ソニー株式会社 画像復号化方法及び装置
US6104754A (en) * 1995-03-15 2000-08-15 Kabushiki Kaisha Toshiba Moving picture coding and/or decoding systems, and variable-length coding and/or decoding system
US8582659B2 (en) * 2003-09-07 2013-11-12 Microsoft Corporation Determining a decoding time stamp from buffer fullness
US7567617B2 (en) * 2003-09-07 2009-07-28 Microsoft Corporation Predicting motion vectors for fields of forward-predicted interlaced video frames
US7609762B2 (en) * 2003-09-07 2009-10-27 Microsoft Corporation Signaling for entry point frames with predicted first field
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US8325799B2 (en) * 2004-12-28 2012-12-04 Nec Corporation Moving picture encoding method, device using the same, and computer program
JP2010041354A (ja) * 2008-08-05 2010-02-18 Victor Co Of Japan Ltd 動画像符号化方法、符号化装置及び符号化プログラム
JP5489557B2 (ja) 2009-07-01 2014-05-14 パナソニック株式会社 画像符号化装置及び画像符号化方法
TWI637628B (zh) 2011-07-02 2018-10-01 三星電子股份有限公司 視訊解碼裝置執行的解碼視訊的方法、視訊編碼裝置執行的編碼視訊的方法以及非暫態的電腦可讀取儲存媒體
JP5680812B1 (ja) * 2013-07-05 2015-03-04 パナソニック インテレクチュアル プロパティ コーポレーション オブアメリカPanasonic Intellectual Property Corporation of America 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置

Also Published As

Publication number Publication date
JP6022060B2 (ja) 2016-11-09
EP3010232A4 (en) 2017-01-25
US20160094860A1 (en) 2016-03-31
CN105325000A (zh) 2016-02-10
US10034019B2 (en) 2018-07-24
KR20160019098A (ko) 2016-02-18
CN105325000B (zh) 2019-01-08
BR112015030508A2 (pt) 2017-07-25
JP2018137741A (ja) 2018-08-30
KR101728285B1 (ko) 2017-04-18
JP2017005723A (ja) 2017-01-05
JP2017005722A (ja) 2017-01-05
EP3010232A1 (en) 2016-04-20
WO2014199634A1 (ja) 2014-12-18
JP6218896B2 (ja) 2017-10-25
JP6573689B2 (ja) 2019-09-11
JPWO2014199634A1 (ja) 2017-02-23

Similar Documents

Publication Publication Date Title
BR112015030508B1 (pt) Dispositivos e métodos de codificação de imagem e de decodificação de imagem
US11438635B2 (en) Flexible tree partitioning processes for visual media coding
ES2869201T3 (es) Dispositivo de codificación de imágenes, dispositivo de decodificación de imágenes, método de codificación de imágenes, método de decodificación de imágenes
CA2997462C (en) Image encoding and decoding using pixel adaptive offset process
BR112019014090A2 (pt) técnicas de intraprevisão para codificação de vídeo
JP6147368B2 (ja) 画像符号化装置、画像復号装置、符号化ストリーム変換装置、画像符号化方法、及び画像復号方法
US20130271565A1 (en) View synthesis based on asymmetric texture and depth resolutions
BR112015025113B1 (pt) Dispositivo de decodificação de imagem a cores, e, método de decodificação de imagem a cores
CN112235584B (zh) 一种用于图像划分的方法及装置、编码、解码视频序列图像的方法及装置
KR20140048784A (ko) 제한적 깊이정보값을 공유하여 움직임 정보를 유도하는 방법 및 장치
WO2021258841A1 (zh) 帧间预测方法、编码器、解码器以及计算机存储介质
WO2022116113A1 (zh) 一种帧内预测方法、装置及解码器和编码器
JP6373008B2 (ja) 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
JP6362370B2 (ja) 画像符号化装置、画像復号装置、画像符号化方法及び画像復号方法
CN114930850A (zh) 基于变换的图像编码方法及其设备
CN114846799B (zh) 图像编码和解码方法、存储介质及图像数据的发送方法
WO2020182194A1 (zh) 帧间预测的方法及相关装置
KR20220088504A (ko) 컨텐츠 적응적 분할 예측
TW202139703A (zh) 解碼、編碼、編解碼方法、裝置及其設備
BR122023022608A2 (pt) Aparelho de decodificação para decodificação de imagens, aparelho de codificação de imagem para codificação de imagens e aparelho para transmissão de dados para uma informação de imagem
JP2018166329A (ja) 画像符号化装置および画像復号装置

Legal Events

Date Code Title Description
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B350 Update of information on the portal [chapter 15.35 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

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