BR112021004638A2 - dispositivo de decodificação de imagem, método de decodificação de imagem, dispositivo de codificação de imagem e método de codificação de imagem - Google Patents

dispositivo de decodificação de imagem, método de decodificação de imagem, dispositivo de codificação de imagem e método de codificação de imagem Download PDF

Info

Publication number
BR112021004638A2
BR112021004638A2 BR112021004638-0A BR112021004638A BR112021004638A2 BR 112021004638 A2 BR112021004638 A2 BR 112021004638A2 BR 112021004638 A BR112021004638 A BR 112021004638A BR 112021004638 A2 BR112021004638 A2 BR 112021004638A2
Authority
BR
Brazil
Prior art keywords
block
partitioning
image
target block
partitioned
Prior art date
Application number
BR112021004638-0A
Other languages
English (en)
Other versions
BR112021004638B1 (pt
Inventor
Hiroyuki Kurashige
Original Assignee
Jvckenwood 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 Jvckenwood Corporation filed Critical Jvckenwood Corporation
Priority claimed from PCT/JP2019/046812 external-priority patent/WO2020111240A1/ja
Publication of BR112021004638A2 publication Critical patent/BR112021004638A2/pt
Publication of BR112021004638B1 publication Critical patent/BR112021004638B1/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree coding

Landscapes

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

Abstract

“dispositivo de decodificação de imagem, método de decodificação de imagem, dispositivo de codificação de imagem e método de codificação de imagem”. de acordo com a presente invenção, uma unidade de divisão de bloco inclui: uma unidade de quatro divisões que divide, por quatro, um bloco-alvo, dividindo-se, pela metade, o bloco-alvo em cada uma dentre uma direção horizontal e uma direção vertical do bloco-alvo através de divisão recursiva e gera quatro blocos; e uma unidade de divisão dois-três que divide, por dois ou três, um bloco-alvo em uma direção horizontal ou em uma direção vertical do bloco-alvo por divisão recursiva e gera dois ou três blocos. quando o bloco-alvo é dividido horizontalmente e o bloco-alvo dividido ultrapassa o lado direito de um limite da imagem, as unidades de duas ou três divisões proíbe o bloco-alvo de ser dividido na direção horizontal. quando o bloco-alvo for dividido verticalmente e o bloco-alvo dividido exceder o lado de fundo de um limite de imagem, a unidade de duas ou três divisões proíbe o bloco-alvo de ser dividido na direção vertical.

Description

Relatório Descritivo da Patente de Invenção para “DISPOSITIVO DE DECODIFICAÇÃO DE IMAGEM, MÉTODO DE DECODIFICAÇÃO DE IMAGEM, DISPOSITIVO DE CODIFICAÇÃO DE IMAGEM E MÉTODO DE CODIFICAÇÃO DE IMAGEM”.
CAMPO DA TÉCNICA
[0001] A presente revelação refere-se a uma técnica para codificar e decodificar uma imagem em unidades de blocos obtidas por particionamento.
TÉCNICA ANTECEDENTE
[0002] Uma imagem é particionada em blocos, cada um contendo um número predeterminado de pixels, e a codificação e decodificação da imagem são realizadas bloco a bloco. No presente documento, o particionamento em unidades apropriadas de blocos permite aumentos na eficiência da predição intraquadro, predição interquadro, transformação ortogonal, codificação de entropia e semelhantes, levando assim a um aumento na eficiência de codificação.
LISTA DE CITAÇÕES LITERATURA DE PATENTE
[0003] [Literatura de Patente 1] JP2015-526008 A
[0004] Literatura de Não Patente
[0005] [Literatura de Não Patente 1] JVET, Versatile Video Coding (Rascunho 2), julho de 2018
SUMÁRIO DA INVENÇÃO
[0006] Quando um bloco não é particionado em blocos de tamanho e formato apropriados, a eficiência da codificação diminuirá. Em particular, no final de um quadro, um bloco que contém pixels localizado além de um limite de imagem tem um tamanho e formato inadequados e a eficiência de codificação diminui em conformidade.
[0007] A presente revelação foi feita em vista de tais circunstâncias e é, portanto, um objetivo da presente revelação fornecer uma técnica para aumentar a eficiência da codificação através da partição de blocos adequada para codificação e decodificação de imagens.
[0008] Fornecido de acordo com um aspecto da presente revelação para resolver os problemas descritos acima, é um dispositivo de decodificação de imagem. Este dispositivo é um dispositivo de decodificação de imagem estruturado para decodificar uma imagem em unidades de blocos obtidas por particionamento, sendo que o dispositivo de decodificação de imagem inclui um decodificador 201 estruturado para decodificar informações de particionamento de bloco em um bloco-alvo, e um particionador de bloco 202 estruturado para particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base na informação de particionamento de bloco para gerar o bloco-alvo. O particionador de bloco inclui um divisor quádruplo estruturado para particionar o bloco-alvo obtido por particionamento recursivo pela metade tanto em uma direção horizontal quanto em uma direção vertical para gerar quatro blocos, e um divisor binário/ternário estruturado para particionar o bloco-alvo obtido por particionamento recursivo em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos. O divisor binário/ternário não permite o particionamento do bloco-alvo na direção horizontal quando o particionamento do bloco-alvo na direção horizontal faz com que o bloco-alvo obtido por particionamento esteja localizado além de um lado direito de um limite de imagem, e não permite o particionamento do bloco-alvo na direção vertical quando o particionamento do bloco- alvo na direção vertical faz com que o bloco-alvo obtido por particionamento seja localizado além de um lado inferior do limite de imagem.
[0009] Fornecido de acordo com outro aspecto da presente revelação é um dispositivo de decodificação de imagem. Este dispositivo é um dispositivo de decodificação de imagem estruturado para decodificar uma imagem em unidades de blocos obtidas por particionamento, sendo que o dispositivo de decodificação de imagem inclui um decodificador 201 estruturado para decodificar informações de particionamento de bloco em um bloco-alvo, e um particionador de bloco estruturado para particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base na informação de particionamento de bloco para gerar o bloco-alvo. O particionador de bloco 202 inclui um divisor quádruplo estruturado para particionar o bloco-alvo obtido por particionamento recursivo pela metade tanto em uma direção horizontal quanto em uma direção vertical para gerar quatro blocos, e um divisor binário/ternário estruturado para particionar o bloco-alvo obtido por particionamento recursivo em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos. Quando o particionamento do bloco-alvo em qualquer uma das direções faz com que o bloco-alvo obtido pelo particionamento seja localizado além do limite de imagem, e uma profundidade de particionamento de bloco atinge uma profundidade limite predeterminada ou um número ou proporção de pixels contidos no bloco obtido por particionamento e localizado além do limite de imagem é maior do que um valor predeterminado, o divisor binário/ternário não permite o particionamento do bloco-alvo na direção.
[0010] Fornecido de acordo com ainda outro aspecto da presente revelação é um dispositivo de decodificação de imagem. Este dispositivo é um dispositivo de decodificação de imagem estruturado para decodificar uma imagem em unidades de blocos obtidas por particionamento, sendo que o dispositivo de decodificação de imagem inclui um decodificador 201 estruturado para decodificar informações de particionamento de bloco em um bloco-alvo, e um particionador de bloco 202 estruturado para particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base na informação de particionamento de bloco para gerar o bloco-alvo. O particionador de bloco inclui um divisor quádruplo estruturado para particionar o bloco- alvo obtido por particionamento recursivo pela metade tanto em uma direção horizontal quanto em uma direção vertical para gerar quatro blocos, e um divisor binário/ternário estruturado para particionar o bloco- alvo obtido por particionamento recursivo em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos. O divisor binário/ternário determina uma direção na qual o bloco-alvo é particionado de modo a fazer com que, ao particionar o bloco-alvo, o bloco-alvo obtido por particionamento contenha o maior número de pixels localizados além de um limite de imagem.
[0011] Fornecido de acordo com ainda outro aspecto da presente revelação é um método de decodificação de imagem. Este método é um método de decodificação de imagem para decodificar uma imagem em unidades de blocos obtidas por particionamento, em que o método de decodificação de imagem inclui uma etapa de decodificação de informações de particionamento de bloco de decodificação em um bloco-alvo e uma etapa de particionamento de bloco de particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base na informação de particionamento de bloco para gerar o bloco-alvo. A etapa de particionamento de bloco inclui uma etapa de divisão quádrupla de particionar o bloco-alvo obtido por particionamento recursivo ao meio tanto em uma direção horizontal quanto em uma direção vertical para gerar quatro blocos, e uma etapa de divisão binária/ternária de partição do bloco-alvo obtido por partição recursiva em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos. A etapa de divisão binária/ternária não permite o particionamento do bloco-alvo na direção horizontal quando o particionamento do bloco-alvo na direção horizontal faz com que o bloco-alvo obtido por particionamento esteja localizado além de um lado direito de um limite de imagem e não permite o particionamento do bloco-alvo na direção vertical quando o particionamento do bloco-alvo na direção vertical faz com que o bloco-alvo obtido por particionamento seja localizado além de um lado inferior do limite de imagem.
[0012] Observe que qualquer combinação dos componentes descritos acima, ou uma entidade que resulte da substituição de expressões da presente revelação entre um método, um dispositivo, um sistema, uma mídia de gravação, um programa de computador e semelhantes também é válida como um aspecto da presente revelação.
[0013] A presente revelação permite o particionamento de blocos adequado para codificação e decodificação de imagens e, assim, permite um aumento na eficiência de codificação.
BREVE DESCRIÇÃO DE DESENHOS
[0014] A Figura 1 é um diagrama de blocos de um dispositivo de codificação de imagem de acordo com uma primeira modalidade.
[0015] A Figura 2 é um diagrama de blocos de um dispositivo de decodificação de imagem de acordo com a primeira modalidade.
[0016] A Figura 3 é um fluxograma que mostra o particionamento em blocos de árvore e o particionamento de dentro de cada bloco de árvore.
[0017] A Figura 4 é um diagrama que mostra como uma imagem de entrada é particionada em blocos de árvore.
[0018] A Figura 5 é um diagrama para descrever z-scan.
[0019] A Figura 6 é um diagrama para descrever o particionamento do bloco de árvore.
[0020] A Figura 7 é um fluxograma para descrever um processo a ser executado em cada bloco obtido pela partição do bloco de árvore em quatro.
[0021] A Figura 8 é um fluxograma para descrever um processo a ser executado em cada bloco obtido pela partição do bloco de árvore em dois ou três.
[0022] A Figura 9 é um diagrama que mostra uma relação entre os blocos de árvore e um limite de imagem.
[0023] A Figura 10 é um diagrama que mostra uma relação entre os blocos de árvore e um limite de imagem.
[0024] A Figura 11 é um fluxograma para descrever o particionamento de bloco de acordo com a primeira modalidade.
[0025] A Figura 12 é um diagrama que mostra a partição de bloco de acordo com a primeira modalidade.
[0026] A Figura 13 é um diagrama que mostra a sintaxe para o particionamento de bloco de acordo com a primeira modalidade.
[0027] A Figura 14 é um fluxograma para descrever o particionamento de bloco de acordo com uma segunda modalidade.
[0028] A Figura 15 é um diagrama que mostra a partição de bloco de acordo com a segunda modalidade.
[0029] A Figura 16 é um fluxograma para descrever o particionamento de bloco de acordo com uma terceira modalidade.
[0030] A Figura 17 é um diagrama que mostra a partição de bloco de acordo com a terceira modalidade.
[0031] A Figura 18 é um fluxograma para descrever a partição de bloco de acordo com a terceira modalidade.
[0032] A Figura 19 é um diagrama que mostra o particionamento de blocos de acordo com uma quarta modalidade.
[0033] A Figura 20 é um fluxograma para descrever a partição de bloco de acordo com a quarta modalidade.
[0034] A Figura 21 é um diagrama que mostra o particionamento de blocos de acordo com uma quinta modalidade.
[0035] A Figura 22 é um diagrama para descrever um exemplo de uma estrutura de hardware de um dispositivo de codificação e decodificação de acordo com a primeira modalidade.
DESCRIÇÃO DAS MODALIDADES
[0036] É fornecida, de acordo com as modalidades da presente revelação, uma técnica para codificar e decodificar uma imagem em unidades de blocos obtidas por particionamento.
PRIMEIRA MODALIDADE
[0037] Uma descrição será dada abaixo de um dispositivo de codificação de imagem 100 e um dispositivo de decodificação de imagem 200 de acordo com a primeira modalidade da presente revelação. De acordo com a primeira modalidade, quando um bloco é particionado em dois ou três, o particionamento de bloco é restrito.
[0038] A Figura 1 é um diagrama de blocos do dispositivo de codificação de imagem 100 de acordo com a primeira modalidade. A Figura 1 mostra apenas um fluxo de dados relacionado a um sinal de imagem e não mostra nenhum fluxo de dados relacionado a informações suplementares, como um vetor de movimento e um modo de predição diferente do sinal de imagem. Um sinal de imagem para pelo menos um quadro é introduzido no dispositivo de codificação de imagem 100.
[0039] Um particionador de bloco 101 particiona uma imagem em blocos-alvo de codificação que são submetidos a um processo de codificação e fornece um sinal de imagem nos blocos-alvo de codificação para um gerador de sinal residual 103. Além disso, o particionador de bloco 101 fornece o sinal de imagem dos blocos de codificação alvo a um gerador de imagem de predição 102 a fim de avaliar o grau de coincidência de uma imagem de predição.
[0040] O particionador de bloco 101 particiona recursivamente uma imagem em retângulos de um tamanho predeterminado para gerar os blocos de codificação alvo. O particionador de bloco 101 inclui um divisor quádruplo que particiona um bloco-alvo obtido por particionamento recursivo em quatro para gerar quatro blocos e um divisor binário/ternário que particiona o bloco-alvo obtido por particionamento recursivo em dois ou três para gerar dois ou três blocos. Uma descrição detalhada da operação do particionador de bloco 101 será dada mais tarde.
[0041] Fornecidos ao gerador de previsão de imagem 102 são o sinal de imagem do bloco-alvo de codificação do particionador de bloco 101 e um sinal de imagem decodificado de uma memória de imagem decodificada 108. O gerador de imagem de predição 102 usa os sinais fornecidos para realizar a predição intra (predição intraquadro) ou predição inter (predição interquadro) com base no modo de predição e gerar um sinal de imagem de predição. Na intra predição, um sinal de imagem de um bloco codificado adjacente ao bloco-alvo de codificação na mesma imagem (imagem de codificação) é fornecido a partir da memória de imagem decodificada 108 para o gerador de imagem de predição 102. Então, o gerador de predição de imagem 102 usa esse sinal de imagem e o sinal de imagem do bloco de codificação alvo fornecido a partir do particionador de bloco 101 para gerar o sinal de predição de imagem. Na inter predição, um sinal de imagem de uma imagem codificada (imagem de referência) que é anterior ou posterior à imagem de codificação em série temporal é fornecido a partir da memória de imagem decodificada 108 para o gerador de imagem de predição 102. Em seguida, o gerador de predição de imagem 102 usa esse sinal de imagem e o bloco-alvo de codificação fornecido a partir do particionador de bloco 101 para avaliar o grau de coincidência por correspondência de bloco ou semelhante e obter um vetor de movimento que representa a quantidade de movimento. O gerador de imagem de predição 102 realiza compensação de movimento com base nesse vetor de movimento e na imagem de referência para gerar o sinal de predição de imagem. O gerador de imagem de predição 102 fornece o sinal de imagem de predição, assim, gerado para o gerador de sinal residual 103.
[0042] O gerador de sinal residual 103 gera um sinal residual subtraindo o alvo de codificação do sinal de imagem e o sinal de predição gerado pelo gerador de imagem de predição 102 e fornece o sinal residual para uma transformação ortogonal e parte de quantização
104.
[0043] A transformação ortogonal e parte de quantização 104 transforma ortogonalmente e quantiza o sinal residual fornecido a partir do gerador de sinal residual 103. A transformação ortogonal e parte de quantização 104 fornecem o sinal residual ortogonalmente transformado e quantizado para um codificador 105 e uma quantização inversa e parte de transformação ortogonal inversa 106.
[0044] O codificador 105 gera um fluxo de bits correspondente ao sinal residual quantizado e transformado ortogonalmente fornecido a partir da transformação ortogonal e da parte de quantização 104. O codificador 105 gera ainda um fluxo de bits correspondente a informações suplementares, como o vetor de movimento, o modo de predição e as informações de particionamento de bloco fornecidas a partir de cada componente. Em seguida, o codificador 105 emite os fluxos de bits do dispositivo de codificação de imagem 100.
[0045] A quantização inversa e a parte de transformação ortogonal inversa 106 realizam a quantização inversa e a transformação ortogonal inversa no sinal residual ortogonalmente transformado e quantizado fornecido a partir da transformação ortogonal e parte de quantização 104 para obter o sinal residual. A quantização inversa e a parte de transformação ortogonal inversa 106 fornecem o sinal residual para uma parte de sobreposição de sinal de imagem decodificada 107.
[0046] A parte de sobreposição do sinal de imagem decodificada 107 sobrepõe o sinal de imagem de predição gerado pelo gerador de imagem de predição 102 e o sinal residual obtido pela quantização inversa e parte de transformação ortogonal inversa 106 para gerar uma imagem decodificada e armazena a imagem decodificada na memória de imagem decodificada 108. Observe que a parte de sobreposição do sinal de imagem decodificada 107 pode realizar um processo de filtragem na imagem decodificada para reduzir a distorção de bloco e semelhantes causados pela codificação, antes de armazenar a imagem decodificada na memória de imagem decodificada 108.
[0047] A Figura 2 é um diagrama de blocos do dispositivo de decodificação de imagem 200 de acordo com a primeira modalidade. A Figura 2 mostra apenas um fluxo de dados relacionado a um sinal de imagem e não mostra nenhum fluxo de dados relacionado a informações suplementares, como um vetor de movimento e um modo de predição diferente do sinal de imagem. Um fluxo de bits é introduzido no dispositivo de decodificação de imagem 200.
[0048] Um decodificador 201 decodifica o fluxo de bits fornecido e fornece um sinal residual transformado ortogonalmente e quantizado para um particionador de bloco 202. Além disso, o decodificador 201 fornece as informações suplementares, como o vetor de movimento, o modo de predição e as informações de particionamento de bloco para cada componente para usar as informações suplementares para um processo relacionado a informações suplementares.
[0049] O particionador de bloco 202 determina um formato de um bloco-alvo de decodificação com base nas informações de particionamento de bloco decodificado e fornece um sinal residual quantizado e transformado ortogonalmente do bloco-alvo de decodificação determinado para uma quantização inversa e parte de transformação ortogonal inversa 203.
[0050] O particionador de bloco 202 particiona recursivamente uma imagem em retângulos de um tamanho predeterminado com base nas informações de particionamento de bloco decodificado para gerar o bloco-alvo de decodificação. O particionador de bloco 202 inclui um divisor quádruplo que particiona o bloco-alvo obtido por particionamento recursivo em quatro para gerar quatro blocos e um divisor binário/ternário que particiona o bloco-alvo obtido por particionamento recursivo em dois ou três blocos para gerar dois ou três blocos. Uma descrição detalhada da operação do particionador de bloco 202 será dada mais tarde.
[0051] A quantização inversa e a parte de transformação ortogonal inversa 203 realizam a quantização inversa e a transformação ortogonal inversa no sinal residual ortogonalmente transformado e quantizado fornecido para obter o sinal residual. O sinal residual é fornecido a uma parte de sobreposição de sinal de imagem decodificada 205.
[0052] Um gerador de predição de imagem 204 gera um sinal de predição de imagem a partir de um sinal de imagem decodificado fornecido a partir de uma memória de imagem decodificada 206 e fornece o sinal de predição de imagem para a parte de sobreposição do sinal de imagem decodificada 205.
[0053] A parte de sobreposição de sinal de imagem decodificada 205 sobrepõe o sinal de imagem de predição gerado pelo gerador de imagem de predição 204 e o sinal residual obtido pela quantização inversa e parte de transformação ortogonal inversa 203 para gerar um sinal de imagem decodificado. Além disso, a parte de sobreposição do sinal de imagem decodificado 205 armazena o sinal de imagem decodificado na memória de imagem decodificada 206. Observe que a parte de sobreposição do sinal de imagem decodificada 205 pode realizar um processo de filtragem na imagem decodificada para reduzir a distorção de bloco e semelhantes causados pela codificação, antes de armazenar a imagem decodificada na memória de imagem decodificada 206. Em seguida, a parte de sobreposição do sinal de imagem decodificado 205 emite a imagem decodificada do dispositivo de decodificação de imagem 200.
[0054] Uma descrição será dada abaixo da operação do particionador de bloco 101 no dispositivo de codificação de imagem 100 com referência à Figura 3. A Figura 3 mostra uma operação em que o particionador de bloco 101 particiona uma imagem em blocos de árvore e particiona o interior ou cada bloco de árvore em blocos.
[0055] Primeiro, uma imagem de entrada é particionada em blocos de árvore de um tamanho predeterminado S1000. Suponha que o bloco de árvore tenha um tamanho de 128 × 128 pixels. Observe que o bloco de árvore não está limitado a esse tamanho e pode ter qualquer tamanho e proporção, desde que o bloco de árvore tenha um formato retangular. Além disso, o tamanho do bloco de árvore pode ser predeterminado entre o dispositivo de codificação e o dispositivo de decodificação. Além disso, uma configuração pode ser empregada onde o dispositivo de codificação determina o tamanho do bloco de árvore e registra o tamanho em um fluxo de bits, e o dispositivo de decodificação usa o tamanho do bloco de árvore registrado no fluxo de bits. A Figura 4 mostra como a imagem de entrada é particionada em blocos de árvore. Os blocos da árvore são codificados em ordem de varredura raster, da esquerda para a direita e de cima para baixo.
[0056] O interior de cada bloco de árvore é ainda particionado em blocos retangulares. O interior do bloco de árvore é codificado na ordem z-scan mostrada na Figura 5. A ordem z-scan corresponde a uma ordem superior esquerdo, superior direito, inferior esquerdo e inferior direito. O bloco interno da árvore pode ser particionado em quatro, dois ou três.
[0057] O particionamento do bloco em quatro é realizado particionando-se o bloco ao meio tanto na direção horizontal quanto na direção vertical, como mostrado na Figura 6A para gerar quatro blocos.
[0058] O particionamento do bloco em dois ou três é executado particionando o bloco na direção horizontal ou vertical. A fim de particionar o bloco em dois na direção horizontal, o bloco é particionado ao meio, como mostrado na Figura 6B, para gerar dois blocos. Além disso, a fim de particionar o bloco em três na direção horizontal, o bloco é particionado em uma proporção de 1:2:1 como mostrado na Figura 6C para gerar três blocos. Por outro lado, a fim de particionar o bloco em dois na direção vertical, o bloco é particionado ao meio, como mostrado na Figura 6D, para gerar dois blocos. Além disso, a fim de particionar o bloco em três na direção vertical, o bloco é particionado em uma proporção de 1:2:1 como mostrado na Figura 6E para gerar três blocos.
[0059] A operação do particionador de bloco 101 será descrita com referência à Figura 3 novamente. Em primeiro lugar, é feita uma determinação quanto à possibilidade de particionar o interior do bloco de árvore pela metade nas direções horizontal e vertical para gerar quatro blocos S1001.
[0060] Um método conhecido denominado Otimização de Taxa de Distorção (otimização R-D) para determinar um caso ideal a partir de uma pluralidade de condições, incluindo a determinação da possibilidade de particionar o bloco em quatro. Na otimização R-D, um custo de codificação é calculado a partir de uma quantidade de codificação e distorção de codificação. Em seguida, os respectivos custos de codificação sob a pluralidade de condições são calculados e um caso em que o custo de codificação se torna o menor é selecionado. Ou seja, a determinação da possibilidade de particionar o bloco em quatro é feita calculando-se um custo de codificação quando o bloco é particionado em quatro e um custo de codificação quando o bloco não é particionado em quatro e ao selecionar um caso em que o custo de codificação se torna o menor. A fim de determinar o caso ideal a partir da pluralidade de condições, um método diferente da otimização R-D pode ser usado.
[0061] Quando é determinado que o interior do bloco de árvore é particionado em quatro S1001: SIM, o interior do bloco de árvore é particionado em quatro S1002. Um processo de particionamento adicional do bloco particionado em quatro será descrito mais tarde (Figura 7).
[0062] Quando é determinado que o interior do bloco de árvore não está particionado em quatro S1001: NÃO, determina-se a possibilidade de o interior do bloco de árvore ser particionado em dois ou três S1003.
[0063] Quando é determinado que o interior do bloco de árvore é particionado em dois ou três S1003: SIM, uma determinação é feita se a direção de partição é a direção vertical S1004.
[0064] Quando é determinado que a direção de partição é a direção vertical S1004: SIM, uma determinação é feita quanto à possibilidade de se particionar o interior do bloco de árvore em dois S1005.
[0065] Quando é determinado que o interior do bloco de árvore é particionado em dois S1005: SIM, o interior do bloco de árvore é particionado em dois na direção vertical S1006. Por outro lado, quando é determinado que o interior do bloco de árvore é particionado em três S1005: NÃO, o interior do bloco de árvore é particionado em três na direção vertical S1007. Um processo de particionamento adicional do bloco particionado em dois ou três na direção vertical será descrito mais tarde (Figura 8).
[0066] Quando é determinado que a direção de partição é a direção horizontal S1004: NÃO, uma determinação é feita quanto à possibilidade de particionar o interior do bloco de árvore em dois S1008.
[0067] Quando é determinado que o interior do bloco de árvore é particionado em dois S1008: SIM, o interior do bloco de árvore é particionado em dois na direção horizontal S1009. Por outro lado, quando é determinado que o interior do bloco de árvore é particionado em três S1008: NÃO, o interior do bloco de árvore é particionado em três na direção horizontal S1010. Um processo de particionamento adicional do bloco particionado em dois ou três na direção horizontal será descrito mais tarde (Figura 8).
[0068] Quando é determinado que o interior do bloco de árvore não é particionado em dois ou três S1003: NÃO, o processo de particionamento de bloco é encerrado sem particionar o interior do bloco de árvore S1011.
[0069] A seguir, será fornecida uma descrição de um processo a ser executado em cada um dos quatro blocos obtidos pela partição do bloco de árvore ao meio, tanto na direção horizontal quanto na vertical, com referência a um fluxograma da Figura 7.
[0070] Em primeiro lugar, é feita uma determinação quanto à possibilidade de particionar ainda mais o interior do bloco pela metade, tanto na direção horizontal quanto na vertical, para gerar quatro blocos S1101.
[0071] Quando é determinado que o interior do bloco é particionado em quatro S1101: SIM, o interior do bloco é ainda particionado em quatro S1102.
[0072] Quando é determinado que o interior do bloco não é particionado em quatro S1101: NÃO, uma determinação é feita quanto à possibilidade de particionar o interior do bloco em dois ou três S1103.
[0073] Quando é determinado que o interior do bloco é particionado em dois ou três S1103: SIM, uma determinação é feita se a direção de partição é a direção vertical S1104.
[0074] Quando é determinado que a direção de partição é a direção vertical S1104: SIM, uma determinação é feita quanto à possibilidade de se particionar o interior do bloco em dois S1105.
[0075] Quando é determinado que o interior do bloco é particionado em dois S1105: SIM, o interior do bloco é particionado em dois na direção vertical S1106. Por outro lado, quando é determinado que o interior do bloco é particionado em três S1105: NÃO, o interior do bloco é particionado em três na direção vertical S1107.
[0076] Quando é determinado que a direção de partição é a direção horizontal S1104: NÃO, uma determinação é feita quanto à possibilidade de se particionar o interior do bloco em dois S1108.
[0077] Quando é determinado que o interior do bloco é particionado em dois S1108: SIM, o interior do bloco é particionado em dois na direção horizontal S1109. Por outro lado, quando é determinado que o interior do bloco é particionado em três S1108: NÃO, o interior do bloco é particionado em três na direção horizontal S1110.
[0078] Quando é determinado que o interior do bloco não é particionado em dois ou três S1103: NÃO, o processo de particionamento de bloco é encerrado sem particionar adicionalmente o interior do bloco S1111.
[0079] O processo mostrado no fluxograma da Figura 7 é executado recursivamente em cada um dos quatro blocos obtidos por partição. O interior do bloco particionado em quatro é codificado na ordem z-scan.
[0080] A seguir, será fornecida uma descrição de um processo a ser executado em cada um dos blocos obtidos pela partição do bloco de árvore em dois ou três na direção vertical com referência ao fluxograma da Figura 8.
[0081] Quando o bloco de árvore é particionado em dois ou três na direção vertical, uma determinação é feita quanto à possibilidade de particionar ainda mais o interior de cada um dos blocos obtidos por partição em dois ou três S1201.
[0082] Quando é determinado que o interior do bloco é particionado em dois ou três S1201: SIM, uma determinação é feita se a direção de partição é a direção vertical S1202.
[0083] Quando é determinado que a direção de partição é a direção vertical S1202: SIM, uma determinação é feita quanto à possibilidade de se particionar o interior do bloco em dois S1203.
[0084] Quando é determinado que o interior do bloco é particionado em dois S1203: SIM, o interior do bloco é particionado em dois na direção vertical S1204. Por outro lado, quando é determinado que o interior do bloco é particionado em três S1203: NÃO, o interior do bloco é particionado em três na direção vertical S1205.
[0085] Quando é determinado que a direção de partição é a direção horizontal S1202: NÃO, uma determinação é feita quanto à possibilidade de se particionar o interior do bloco em dois S1206.
[0086] Quando é determinado que o interior do bloco é particionado em dois S1206: SIM, o interior do bloco é particionado em dois na direção horizontal S1207. Por outro lado, quando é determinado que o interior do bloco é particionado em três S1206: NÃO, o interior do bloco é particionado em três na direção horizontal S1208.
[0087] Quando é determinado que o interior do bloco não é particionado em dois ou três S1201: NÃO, o processo de particionamento de bloco é encerrado sem particionar adicionalmente o interior do bloco S1209.
[0088] O processo mostrado no fluxograma da Figura 8 é executado recursivamente em cada um dos blocos obtidos pela partição em dois ou três na direção vertical. O interior do bloco particionado em dois ou três é codificado da esquerda para a direita.
[0089] Da mesma forma, o processo mostrado no fluxograma da Figura 8 é executado recursivamente em cada um dos blocos obtidos por partição em dois ou três na direção horizontal. O interior do bloco particionado em dois ou três é codificado de cima para baixo.
[0090] Observe que o processo de outros blocos de particionamento obtidos pelo particionamento do bloco de árvore foi descrito, mas um bloco pai não precisa ser o bloco de árvore. Por exemplo, quando o bloco de árvore (128 × 128 pixels) é particionado em quatro, e os quatro blocos resultantes (64 × 64 pixels) são particionados adicionalmente, o processo descrito acima também é aplicado ao particionamento dos blocos obtidos por particionamento adicional.
[0091] Para particionamento de bloco recursivo, o número de vezes de particionamento pode ser determinado de modo a ser restrito. Além disso, o número de vezes de particionamento pode ser predeterminado entre o dispositivo de codificação e o dispositivo de decodificação. Além disso, uma configuração pode ser empregada onde o dispositivo de codificação determina e registra o número de vezes de particionamento no fluxo de bits e o dispositivo de decodificação usa o número de vezes de particionamento registrado no fluxo de bits.
[0092] Uma descrição será fornecida abaixo do particionamento de bloco no final de um quadro. A Figura 9 mostra uma relação com um limite de imagem quando uma imagem é particionada em blocos de árvore. Conforme mostrado na Figura 9, o tamanho da imagem não é necessariamente igual a um múltiplo integral do tamanho do bloco de árvore, de modo que o bloco de árvore localizado na extremidade do quadro possa conter uma porção em quadro e uma porção fora do quadro ao longo do limite de imagem. Os blocos de árvore 1001, 1002, 1003 são mostrados como blocos de árvore localizados no final do quadro. Neste caso, como mostrado na Figura 10, a parte fora do quadro localizada além do limite de imagem é tratada da mesma maneira que os pixels mais externos no quadro. Pixels 1011, 1012, 1013 são mostrados como os pixels mais externos no quadro.
[0093] O pixel 1011 está localizado no bloco de árvore 1001 e em um canto superior direito do quadro. Um pixel localizado no lado direito do pixel 1011, ou seja, um pixel fora do quadro localizado além do limite de imagem, é tratado da mesma maneira que o pixel 1011.
[0094] O pixel 1012 está localizado no bloco de árvore 1002 e em um canto esquerdo inferior do quadro. Um pixel localizado no lado inferior do pixel 1012, ou seja, um pixel fora do quadro localizado além do limite de imagem, é tratado da mesma maneira que o pixel 1012.
[0095] O pixel 1013 está localizado no bloco de árvore 1003 e em um canto direito inferior do quadro. Pixels localizados no lado direito, lado inferior e lado direito inferior do pixel 1013, ou seja, pixels fora do quadro localizados além do limite de imagem, são tratados da mesma forma que o pixel 1013.
[0096] Então, quando o bloco é particionado em dois ou três, o particionamento do bloco é restrito. Isso permite que o bloco localizado na extremidade do quadro seja particionado em blocos de um formato apropriado e, assim, permite um aumento na eficiência da codificação.
[0097] As restrições ao particionamento de bloco são aplicadas ao particionamento de um bloco localizado na extremidade do quadro em dois ou três. Ou seja, o processo de partição em dois ou três S1004 a S1010 mostrado na Figura 3 é substituído por um processo descrito abaixo. Além disso, o processo de partição em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo descrito abaixo. Além disso, o processo de partição em dois ou três S1202 a S1208 mostrado na Figura 8 é substituído pelo processo descrito abaixo.
[0098] Uma descrição será fornecida das restrições no particionamento de blocos com referência à Figura 11. Em primeiro lugar, para todos os padrões de particionamento de bloco, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco S1301. Todos os padrões de particionamento de bloco incluem quatro padrões: um padrão em que o bloco é particionado em dois na direção horizontal; um padrão onde o bloco é particionado em dois na direção vertical; um padrão onde o bloco é particionado em três na direção horizontal; e um padrão onde o bloco é particionado em três na direção vertical. Além disso, a restrição do particionamento do bloco é determinada com base no fato de os pixels localizados além do limite de imagem serem particionados. Por exemplo, quando o bloco é particionado em dois na direção horizontal e os pixels localizados além do limite de imagem são particionados de acordo, o particionamento do bloco em dois na direção horizontal é restrito.
[0099] No presente documento, restringir o particionamento do bloco na direção horizontal corresponde a não permitir o particionamento do bloco na direção horizontal. Além disso, restringir a partição do bloco na direção vertical corresponde a não permitir a partição do bloco na direção vertical. Da mesma forma, restringir o particionamento do bloco em dois corresponde a proibir o particionamento do bloco em dois. Além disso, restringir o particionamento do bloco em três corresponde a proibir o particionamento do bloco em três.
[00100] Em seguida, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco para todos os padrões de particionamento de bloco S1302. Quando o particionamento de bloco é restrito para todos os padrões S1302: SIM, o bloco não está particionado S1314. Por outro lado, quando o particionamento do bloco não é restrito para todos os padrões S1302: NÃO, uma determinação é feita quanto à possibilidade de restringir o particionamento do bloco na direção horizontal S1303.
[00101] Quando o particionamento do bloco na direção horizontal é restrito S1303: SIM, prossiga para o próximo processo S1306. Por outro lado, quando o particionamento do bloco na direção horizontal não é restrito S1303: NÃO, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco na direção vertical S1304.
[00102] Quando o particionamento do bloco na direção vertical é restrito S1304: SIM, prossiga para o próximo processo S1310. Por outro lado, quando o particionamento do bloco na direção vertical não é restrito S1304: NÃO, uma determinação é feita quanto à possibilidade de particionar o bloco na direção vertical S1305.
[00103] Quando é determinado que a direção de partição de bloco é a direção vertical S1305: SIM, uma determinação é feita quanto à possibilidade de restringir o particionamento do bloco em três S1306. Por outro lado, quando é determinado que a direção de partição do bloco é a direção horizontal S1305: NÃO, prossiga para o próximo processo S1310.
[00104] Quando o particionamento de blocos em três é restrito S1306: SIM, o bloco é particionado em dois na direção vertical S1308. Por outro lado, quando o particionamento do bloco em três não é restrito S1306: NÃO, uma determinação é feita quanto à possibilidade de particionar o bloco em dois S1307.
[00105] Quando é determinado que o bloco é particionado em dois S1307: SIM, o bloco é particionado em dois na direção vertical S1308. Por outro lado, quando é determinado que o bloco é particionado em três S1307: NÃO, o bloco é particionado em três na direção vertical S1309.
[00106] Quando o particionamento na direção vertical é restrito S1304: SIM e quando é determinado que a direção de partição do bloco é a direção horizontal S1305: NÃO, uma determinação é feita quanto à possibilidade de restringir o particionamento do bloco em três S1310.
[00107] Quando o particionamento de blocos em três é restrito S1310: SIM, o bloco é particionado em dois na direção horizontal S1312. Por outro lado, quando o particionamento do bloco em três não é restrito S1310: NÃO, uma determinação é feita quanto à possibilidade de particionar o bloco em dois S1311.
[00108] Quando é determinado que o bloco é particionado em dois S1311: SIM, o bloco é particionado em dois na direção horizontal S1312. Por outro lado, quando é determinado que o bloco é particionado em três S1311: NÃO, o bloco é particionado em três na direção horizontal S1313.
[00109] Ou seja, quando os pixels localizados além do limite de imagem são particionados como resultado do particionamento do bloco, o particionamento do bloco em uma direção correspondente é restrito.
[00110] Uma descrição será fornecida abaixo de um exemplo específico. Um bloco de árvore localizado na parte inferior do quadro não é particionado em quatro S1001: NÃO, mas o interior do bloco de árvore é particionado em dois ou três S1003: SIM. A Figura 12A mostra como o bloco de árvore contém a parte dentro do quadro e a parte fora do quadro através do limite de imagem. No presente documento, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco para todos os padrões de particionamento de bloco do bloco de árvore S1301.
[00111] As Figuras 12A a 12D mostram como o bloco de árvore é particionado de acordo com todos os padrões. Quando o bloco é particionado em dois na direção vertical, como mostrado na Figura 12A, os pixels localizados além do limite de imagem são particionados, de modo que esse particionamento do bloco seja restrito. Da mesma forma, como mostrado na Figura 12B, quando o bloco é particionado em três na direção vertical, os pixels localizados além do limite de imagem são particionados, de modo que esse particionamento do bloco seja restrito. Por outro lado, quando o bloco é particionado em dois na direção horizontal como mostrado na Figura 12C, os pixels localizados além do limite de imagem não são particionados, de modo que esse particionamento do bloco não seja restrito. Da mesma forma, quando o bloco é particionado em três na direção horizontal como mostrado na Figura 12D, os pixels localizados além do limite de imagem não são particionados, de modo que esse particionamento do bloco não seja restrito.
[00112] Portanto, o particionamento de bloco não é restrito a todos os padrões de particionamento de bloco (S1302: NÃO. Além disso, o particionamento do bloco na direção horizontal não é restrito S1303: NÃO, e o particionamento do bloco na direção vertical é restrito S1304: SIM. Então, o particionamento do bloco em três não é restrito S1310: NÃO. Portanto, é decidido se o bloco deve ser particionado em dois S1311. Quando é determinado que o bloco é particionado em dois S1311: SIM, o bloco é particionado em dois na direção horizontal S1312.
[00113] Essas restrições no particionamento de blocos permitem que o bloco tenha um formato apropriado. Isso ocorre porque, em um bloco que contém os pixels fora do quadro, os valores dos pixels da parte fora do quadro são uniformes. Portanto, as alterações nos valores de pixel da parte dentro do quadro no bloco são pequenas em relação a um bloco que não contém pixels fora do quadro. Isso reduz a necessidade de codificar pequenas alterações de pixel. Portanto, é possível reduzir a quantidade de codificação e aumentar a eficiência da codificação reunindo tantos pixels fora do quadro quanto possível em um bloco.
[00114] Essas restrições ao particionamento de blocos também se aplicam à extremidade direita do quadro. As Figuras 12E a 12H mostram como o bloco de árvore é particionado de acordo com todos os padrões. No presente documento, quando o bloco é particionado em dois na direção horizontal, como mostrado na Figura 12E, os pixels localizados além do limite de imagem são particionados. Além disso, quando o bloco é particionado em três na direção horizontal, como mostrado na Figura 12F, os pixels localizados além do limite de imagem são particionados. Portanto, esse particionamento de bloco é restrito. Essas restrições no particionamento de blocos permitem um aumento na eficiência da codificação.
[00115] Uma descrição será dada abaixo da operação do particionador de bloco 202 do dispositivo de decodificação de imagem
200. O particionador de bloco 202 particiona um bloco pelo mesmo procedimento de processo que no particionador de bloco 101 do dispositivo de codificação de imagem 100 descrito acima. O particionador de bloco 101 seleciona um padrão de particionamento de bloco e emite as informações de particionamento de bloco assim selecionadas. Por outro lado, o particionador de bloco 202 particiona um bloco com base na informação de particionamento de bloco obtida pela decodificação do fluxo de bits. As restrições no particionamento de bloco são as mesmas que no dispositivo de codificação de imagem 100 descrito acima.
[00116] A Figura 13 mostra a sintaxe (regra de sintaxe do fluxo de bits) para o particionamento de bloco de acordo com a primeira modalidade. Na Figura 13, QT() representa a sintaxe para o processo de particionamento do bloco em quatro, e MTT() representa a sintaxe para o processo de particionamento do bloco em dois ou três. O dispositivo 100 de codificação de imagem executa a codificação de acordo com esta sintaxe e o dispositivo 200 de descodificação de imagem executa a descodificação de acordo com esta sintaxe.
[00117] Primeiro, a possibilidade de particionar o bloco em quatro é representada por QTflag. QTflag é definido como 1 para habilitar o particionamento em quatro, e QTflag é definido como 0 para desabilitar o particionamento em quatro. Com o particionamento em quatro habilitado (QTflag = 1), quando cada um dos quatro blocos obtidos pelo particionamento pode ser particionado em quatro (QTvalid = 1), o processo de particionamento em quatro é executado recursivamente. Com o particionamento em quatro desabilitado (QTflag = 0), se a partição em dois ou três é representada por MTTflag. Com o particionamento em dois ou três habilitado (MTTflag = 1), a possibilidade de partição na direção vertical é representada por vertical_flag, e a possibilidade de partição em dois é representada por BTflag.
vertical_flag é definido como 1 para habilitar o particionamento na direção vertical e vertical_flag é definido como 0 para habilitar o particionamento na direção horizontal. Além disso, BTflag é definido como 1 para habilitar o particionamento em dois e BTflag é definido como 0 para habilitar o particionamento em três. Quando cada um dos dois ou três blocos obtidos por particionamento pode ser posteriormente particionado em dois ou três (MTTvalid = 1), o processo de particionamento em dois ou três é executado recursivamente.
[00118] Uma descrição será dada abaixo da variável QTvalid representando a possibilidade de cada um dos quatro blocos obtidos por particionamento poder ser particionado em quatro. QTvalid é definido para cada um dos quatro blocos obtidos por particionamento. Quando os quatro blocos obtidos pelo particionamento não contêm pixels em quadro, QTvalid é definido como 0. Caso contrário, QTvalid é definido como 1.
[00119] Além disso, será fornecida uma descrição da variável MTTvalid representando se cada um dos dois ou três blocos obtidos por particionamento pode ser particionado em dois ou três. MTTvalid é definido para cada um dos dois ou três blocos obtidos por particionamento. Quando os dois ou três blocos obtidos por particionamento não contêm pixels in-frame, MTTvalid é definido como
0. Caso contrário, MTTvalid é definido como 1.
[00120] De acordo com a presente modalidade, a direção de partição do bloco é restrita, o que elimina a necessidade de vertical_flag. Portanto, vertical_flag na Figura 13 pode ser omitido.
[00121] Essas restrições na partição do bloco permitem que o bloco localizado na extremidade do quadro seja particionado em blocos de um formato apropriado e, assim, permite um aumento na eficiência da codificação. Isso permite ainda o particionamento de blocos adequado para codificação e decodificação de imagens.
SEGUNDA MODALIDADE
[00122] Uma descrição será dada de um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem de acordo com a segunda modalidade da presente revelação. De acordo com a segunda modalidade, o particionamento do bloco é restrito quando a profundidade do particionamento do bloco atinge uma profundidade limite. As outras configurações são iguais às de acordo com a primeira modalidade; portanto, nenhuma descrição será fornecida das outras configurações.
[00123] Uma descrição será fornecida abaixo da profundidade do particionamento do bloco. De acordo com a primeira modalidade, o processo de particionar o bloco em dois ou três e, em seguida, particionar recursivamente cada um dos dois ou três blocos obtidos pela partição em dois ou três foi descrito. Para este processo, um primeiro processo de partição em dois ou três é definido como profundidade 0. Além disso, um segundo processo de partição de cada um dos dois ou três blocos obtidos pelo primeiro processo de partição em dois ou três é definido como profundidade 1, um terceiro processo de partição de cada um dos dois ou três blocos obtidos pelo segundo processo de partição em dois ou três é definido como profundidade 2, e a profundidade de cada processo subsequente é definida da mesma maneira. Além disso, uma profundidade para uso na restrição de particionamento de bloco é predefinida como a profundidade limite.
[00124] As restrições ao particionamento de bloco são aplicadas ao particionamento de um bloco localizado na extremidade do quadro em dois ou três. Ou seja, o processo de partição em dois ou três S1004 a S1010 mostrado na Figura 3 é substituído por um processo descrito abaixo. Além disso, o processo de partição em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo descrito abaixo. Além disso, o processo de partição em dois ou três S1202 a
S1208 mostrado na Figura 8 é substituído pelo processo descrito abaixo.
[00125] Uma descrição será fornecida das restrições no particionamento de blocos com referência à Figura 14. Em primeiro lugar, quando o bloco é particionado em dois ou três, é feita uma determinação para saber se a profundidade da partição do bloco atingiu a profundidade limite S1401.
[00126] Quando a profundidade não atingiu a profundidade limite S1401: NÃO, está determinado a não restringir o particionamento de blocos S1402. Por outro lado, quando a profundidade atinge a profundidade limite S1401: SIM, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco para todos os padrões de particionamento de bloco S1301. S1301 é o mesmo que de acordo com a primeira modalidade; portanto, nenhuma descrição será dada de S1301.
[00127] Em seguida, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco para todos os padrões de particionamento de bloco S1302. S1302 e os processos subsequentes são iguais aos de acordo com a primeira modalidade; portanto, nenhuma descrição será fornecida de S1302 e dos processos subsequentes.
[00128] Ou seja, quando os pixels localizados além do limite de imagem são particionados como resultado do particionamento do bloco e a profundidade do particionamento do bloco atingiu a profundidade limite, o particionamento do bloco é restrito.
[00129] Uma descrição será fornecida abaixo de um exemplo específico. Um bloco de árvore localizado na parte inferior do quadro não é particionado em quatro S1001: NÃO, mas o interior do bloco de árvore é particionado em dois ou três S1003: SIM. Além disso, a profundidade limite é definida como 1. A Figura 12A mostra como o bloco de árvore contém a parte dentro do quadro e a parte fora do quadro através do limite de imagem. Quando este bloco de árvore é particionado em dois ou três, os pixels localizados além do limite de imagem são particionados como resultado do particionamento na direção vertical. Observe que a profundidade é 0 e não atingiu a profundidade limite de 1 S1401: NÃO. Portanto, está determinado a não restringir o particionamento de blocos S1402. Especificamente, o particionamento de blocos é restrito a todos os padrões S1302: NÃO, o particionamento de blocos na direção horizontal não é restrito S1303: NÃO, e o particionamento de blocos na direção vertical não é restrito S1304: NÃO. Em seguida, é feita uma determinação quanto à possibilidade de particionar o bloco na direção vertical S1305. Quando é determinado particionar o bloco na direção vertical S1305: SIM, o particionamento do bloco em três não é restrito S1306: NÃO, de modo que uma determinação seja feita quanto à possibilidade de particionar o bloco em dois S1307. Quando for determinado particionar o bloco em dois S1307: SIM, o bloco é particionado em dois na direção vertical S1308. O referido acima é mostrado na Figura 12A.
[00130] Posteriormente, dos blocos obtidos por partição na direção vertical, um bloco esquerdo é particionado em dois ou três. No presente documento, a profundidade é 1 e atingiu a profundidade limite de 1 S1401: SIM. Portanto, para todos os padrões de particionamento de bloco, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco S1301.
[00131] As Figuras 15A a 15D mostram como o bloco é particionado de acordo com todos os padrões. Quando o bloco é particionado em dois na direção vertical, como mostrado na Figura 15A, os pixels localizados além do limite de imagem são particionados, de modo que esse particionamento do bloco seja restrito. Da mesma forma, como mostrado na Figura 15B, quando o bloco é particionado em três na direção vertical, os pixels localizados além do limite de imagem são particionados, de modo que esse particionamento do bloco seja restrito. Por outro lado, quando o bloco é particionado em dois na direção horizontal como mostrado na Figura 15C, os pixels localizados além do limite de imagem não são particionados, de modo que esse particionamento do bloco não seja restrito. Da mesma forma, quando o bloco é particionado em três na direção horizontal como mostrado na Figura 15D, os pixels localizados além do limite de imagem não são particionados, de modo que esse particionamento do bloco seja restrito.
[00132] Portanto, o particionamento de bloco não é restrito a todos os padrões de particionamento de bloco S1302: NÃO. Além disso, o particionamento do bloco na direção horizontal não é restrito S1303: NÃO, e o particionamento do bloco na direção vertical é restrito S1304: SIM. Então, o particionamento do bloco em três não é restrito S1310: NÃO. Portanto, é decidido se o bloco deve ser particionado em dois S1311. Quando é determinado que o bloco é particionado em dois S1311: SIM, o bloco é particionado em dois na direção horizontal S1312.
[00133] Essas restrições no particionamento de blocos permitem que o bloco tenha um tamanho e formato apropriados. Isso ocorre porque, em um bloco que contém os pixels fora do quadro, os valores dos pixels da parte fora do quadro são uniformes. Portanto, as alterações nos valores de pixel da parte dentro do quadro no bloco são pequenas em relação a um bloco que não contém pixels fora do quadro. Isso reduz a necessidade de codificar pequenas alterações de pixel. Portanto, é possível reduzir a quantidade de codificação e aumentar a eficiência da codificação reunindo tantos pixels fora do quadro quanto possível em um bloco.
[00134] Essas restrições ao particionamento de blocos também se aplicam à extremidade direita do quadro. A profundidade quando o bloco de árvore é particionado em dois ou três é 0 e não atingiu a profundidade limite de 1, de modo que o particionamento do bloco não seja restrito e o bloco seja particionado em dois ou três. Quando o bloco obtido por particionamento é particionado ainda mais, a profundidade é 1 e atingiu a profundidade limite de 1, de modo que uma determinação seja feita quanto à possibilidade de restringir o particionamento de bloco. Então, quando o bloco é particionado em dois na direção horizontal, ou quando o bloco é particionado em três na direção horizontal, os pixels localizados além do limite de imagem são particionados de acordo. Portanto, esse particionamento de bloco é restrito. Essas restrições no particionamento de blocos permitem um aumento na eficiência da codificação.
[00135] De acordo com a presente modalidade, a profundidade de partição do bloco é definida para partição em dois ou três. A profundidade também pode ser definida para divisão em quatro. Além disso, de acordo com a presente modalidade, a partição do bloco é restrita com base na profundidade da partição do bloco. Alternativamente, o particionamento do bloco é restrito com base no número ou proporção de pixels contidos no bloco e localizados além do limite de imagem. Ou seja, quando esses valores são maiores do que os valores predeterminados, o particionamento do bloco é restrito. Além disso, esses valores podem ser diferentes para cada profundidade de partição do bloco. Isso permite que um bloco pequeno em número ou proporção de pixels fora do quadro seja particionado e evita que um bloco grande em número ou proporção de pixels fora do quadro seja particionado. Uma configuração pode ser empregada onde os valores relacionados às restrições no particionamento de bloco, como a profundidade limite de particionamento de bloco, e o número ou proporção de pixels contidos no bloco e localizados além do limite de imagem são registrados pelo dispositivo de codificação no fluxo de bits, e o dispositivo de decodificação usa os valores registrados no fluxo de bits.
[00136] De acordo com a primeira modalidade, a partição do bloco é restrita, independentemente da profundidade da partição do bloco. Por outro lado, de acordo com a presente modalidade, a partição do bloco é restrita com base na profundidade da partição do bloco. Isso permite que um bloco pequeno em proporção de pixels fora do quadro seja particionado e evita que um bloco grande em proporção de pixels fora do quadro seja particionado. Isso permite que o bloco localizado na extremidade do quadro seja particionado em blocos de tamanho e formato apropriados e, assim, permite um aumento na eficiência da codificação. Isso permite ainda o particionamento de blocos adequado para codificação e decodificação de imagens.
TERCEIRA MODALIDADE
[00137] Uma descrição será dada de um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem de acordo com a terceira modalidade da presente revelação. De acordo com a terceira modalidade, o particionamento do bloco é controlado com base no número de pixels localizados além do limite de imagem. As outras configurações são iguais às de acordo com a primeira modalidade; portanto, nenhuma descrição será fornecida das outras configurações.
[00138] O controle no particionamento de bloco é aplicado ao particionamento de um bloco localizado na extremidade do quadro em dois ou três. Ou seja, o processo de partição em dois ou três S1004 a S1010 mostrado na Figura 3 é substituído por um processo descrito abaixo. Além disso, o processo de partição em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo descrito abaixo. Além disso, o processo de partição em dois ou três S1202 a S1208 mostrado na Figura 8 é substituído pelo processo descrito abaixo.
[00139] Uma descrição será fornecida do controle no particionamento de blocos com referência à Figura 16. Primeiro, para todos os padrões de particionamento de bloco, o número de pixels localizados além do limite de imagem é contado S1601. Todos os padrões de particionamento de bloco incluem quatro padrões: um padrão em que o bloco é particionado em dois na direção horizontal; um padrão onde o bloco é particionado em dois na direção vertical; um padrão onde o bloco é particionado em três na direção horizontal; e um padrão onde o bloco é particionado em três na direção vertical.
[00140] Então, tanto para o padrão onde o bloco é particionado em dois quanto para o padrão onde o bloco é particionado em três, é determinada uma direção de particionamento em que o número de pixels localizados além do limite de imagem torna-se o maior S1602.
[00141] Em seguida, é feita uma determinação para particionar o bloco em dois S1603.
[00142] Quando for determinado realizar o particionamento em dois S1603: SIM, o particionamento em dois é realizado na direção de particionamento determinada em S1602 S1604. Por outro lado, quando é determinado realizar o particionamento em três S1603: NÃO, o particionamento em três é realizado na direção de particionamento determinada em S1602 S1605.
[00143] Ou seja, a direção de partição do bloco é controlada de modo a fazer com que o bloco contenha o maior número de pixels localizados além do limite de imagem.
[00144] Uma descrição será fornecida abaixo de um exemplo específico. Suponha que a imagem tenha um tamanho de 1920 × 1080 pixels e o bloco de árvore tenha um tamanho de 128 × 128 pixels. Além disso, o bloco de árvore não é particionado em quatro S1101: NÃO, mas o interior do bloco é particionado em dois ou três S1103: SIM. Então, como mostrado na Figura 17A, na extremidade inferior do quadro, 72 pixels estão localizados além do limite de imagem na direção vertical.
No presente documento, quando o bloco de árvore é particionado de acordo com todos os padrões, o número de pixels localizados além do limite de imagem em cada bloco é contado S1601.
[00145] As Figuras 17A a 17D mostram como o bloco de árvore é particionado de acordo com todos os padrões. Quando o bloco é particionado em dois na direção vertical, como mostrado na Figura 17A, um lado esquerdo 500 e um lado direito 501 do bloco particionado cada um tem 4608 pixels. Por outro lado, quando o bloco é particionado em dois na direção horizontal, como mostrado na Figura 17B, um lado superior 510 e um lado inferior 511 do bloco particionado tem 1024 pixels e 8192 pixels, respectivamente. Ou seja, o maior número de pixels localizado além do limite de imagem é 8192 pixels no lado inferior obtido particionando-se o bloco na direção horizontal. Portanto, a direção de partição pela qual o número de pixels se torna o maior é a direção horizontal S1602.
[00146] Da mesma forma, quando o bloco é particionado em três na direção vertical, como mostrado na Figura 17C, um lado esquerdo 520 e um lado direito 522 do bloco particionado cada um tem 2304 pixels, e um centro 521 tem 4608 pixels. Por outro lado, quando o bloco é particionado em três na direção horizontal, como mostrado na Figura 17D, um lado superior do bloco particionado tem 0 pixels, um centro 531 tem 5120 pixels e um lado inferior 532 tem 4096 pixels. Ou seja, o maior número de pixels localizado além do limite de imagem é 5120 pixels no centro obtido ao particionar o bloco na direção horizontal. Portanto, a direção de partição pela qual o número de pixels se torna o maior é a direção horizontal S1602.
[00147] Finalmente, é decidido se o bloco deve ser particionado em dois S1603. Quando for determinado particionar o bloco em dois S1603: SIM, o bloco é particionado em dois na direção horizontal que é a direção de particionamento determinada S1604. Por outro lado, quando é determinado particionar o bloco em três S1603: NÃO, o bloco é particionado em três na direção horizontal que é a direção de particionamento determinada S1605.
[00148] De acordo com a presente modalidade, quando o bloco é particionado em dois ou três, a direção de partição do bloco é controlada de modo a fazer com que o bloco contenha o maior número de pixels localizados além do limite de imagem. Isso ocorre porque, em um bloco que contém pixels fora do quadro, os valores dos pixels da parte fora do quadro são uniformes e há pouca necessidade de codificar pequenas alterações de pixel. Portanto, é possível reduzir a quantidade de codificação e aumentar a eficiência da codificação reunindo tantos pixels quanto possível em um bloco.
[00149] Além disso, não apenas a direção de partição do bloco, mas também o número de partição do bloco pode ser determinado. Conforme descrito acima, o maior número de pixels localizados além do limite de imagem é de 8192 pixels no caso de partição em dois e 5120 pixels no caso de partição em três. Ou seja, como o particionamento em dois é maior em número de pixels no bloco localizado além do limite de imagem, o bloco é particionado em dois.
[00150] Isso ocorre porque o particionamento em três faz com que o bloco seja particionado em uma posição próxima ao final do bloco, em comparação com o particionamento em dois. O particionamento em três tende a ser menor em número de pixels localizados além do limite de imagem do que o particionamento em dois. Portanto, no final do quadro, o bloco não é particionado em três, e uma direção na qual o bloco é particionado em dois pode ser determinada. Isso torna possível reduzir o processo necessário para particionar o bloco em três e, assim, acelerar o processo de particionamento do bloco.
[00151] O controle no particionamento de bloco é aplicado ao particionamento de um bloco localizado na extremidade do quadro em dois ou três. Ou seja, o processo de partição em dois ou três S1004 a S1010 mostrado na Figura 3 é substituído por um processo descrito abaixo. Além disso, o processo de partição em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo descrito abaixo. Além disso, o processo de partição em dois ou três S1202 a S1208 mostrado na Figura 8 é substituído pelo processo descrito abaixo.
[00152] Uma descrição será fornecida do controle no particionamento de blocos com referência à Figura 18. Primeiro, para todos os padrões de particionamento de bloco, o número de pixels localizados além do limite de imagem é contado S1651. Todos os padrões de particionamento de bloco incluem dois padrões: um padrão onde o bloco é particionado em dois na direção horizontal e um padrão onde o bloco é particionado em dois na direção vertical.
[00153] A seguir, é determinada a direção de partição na qual o bloco é particionado em dois e pela qual o número de pixels localizados além do limite de imagem se torna o maior S1652. Em seguida, o bloco é particionado em dois na direção de partição assim determinada S1654.
[00154] A sintaxe para o particionamento de bloco de acordo com a presente modalidade é a mesma que a mostrada na Figura 13, mas sem vertical_flag. Isso ocorre porque a direção de partição do bloco é controlada de acordo com a presente modalidade, o que elimina a necessidade de vertical_flag. Além disso, de acordo com a presente modalidade, o número de partição do bloco pode ser determinado e o bloco pode ser impedido de ser particionado em três. Isso elimina a necessidade de BTflag, de forma que uma configuração sem BTflag pode ser empregada. A sintaxe para o particionamento de bloco de acordo com a presente modalidade pode ser a mesma mostrada na Figura 13.
[00155] No caso de 1920 × 1080 pixels, não há pixel localizado além do limite de imagem na extremidade direita do quadro. No entanto, quando a largura da imagem não é igual a um múltiplo integral do tamanho do bloco de árvore, existem pixels localizados além do limite de imagem, de modo que o particionamento do bloco seja controlado da mesma maneira como descrito acima.
[00156] De acordo com a presente modalidade, a direção de partição do bloco é controlada com base no número de pixels localizados além do limite de imagem. A direção de partição do bloco pode ser controlada com base na proporção de pixels localizados além do limite de imagem.
[00157] Esse controle na partição do bloco permite que o bloco localizado na extremidade do quadro seja particionado em blocos de tamanho e formato apropriados e, assim, permite um aumento na eficiência da codificação. Isso permite ainda o particionamento de blocos adequado para codificação e decodificação de imagens.
QUARTA MODALIDADE
[00158] Uma descrição será dada de um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem de acordo com a quarta modalidade da presente revelação. De acordo com a quarta modalidade, um caso que é diferente no limite de imagem das modalidades descritas acima será descrito. As outras configurações são iguais às de acordo com a primeira modalidade; portanto, nenhuma descrição será fornecida das outras configurações.
[00159] Aqui, considere um padrão que é diferente no limite de imagem da Figura 12. Observe que, mesmo quando o limite de imagem difere, um padrão para o qual um resultado da determinação de restringir o particionamento do bloco é o mesmo que a Figura 12 é deixado de fora. Por exemplo, suponha que o limite de imagem esteja localizado ligeiramente acima na Figura 12A. Mesmo neste caso, o particionamento de bloco é restrito porque os pixels localizados além do limite de imagem são particionados. Ou seja, para a Figura 12A, o resultado da determinação quanto à possibilidade de restringir a partição do bloco não muda mesmo quando o limite de imagem muda de posição na direção vertical. Isso é verdade para a Figura 12B. Da mesma forma, para as Figuras 12E e 12F, o resultado da determinação quanto à possibilidade de restringir a partição do bloco não muda mesmo quando o limite de imagem muda na posição na direção esquerda-direita.
[00160] Afinal, padrões diferentes no limite de imagem da Figura 12 são padrões mostrados nas Figuras 19A a 19D. O limite de imagem mostrado na Figura 19A está localizado acima do mostrado na Figura 12C. Da mesma forma, o limite de imagem mostrado na Figura 19B está localizado acima do mostrado na Figura 12D. Da mesma forma, os limites da imagem mostrados nas Figuras 19C e 19D estão localizados mais próximos à esquerda do que mostrado nas Figuras 12G e 12H.
[00161] As Figuras 19A e 19B mostram a partição na direção horizontal. No entanto, o particionamento em dois impede que os pixels localizados além do limite de imagem sejam particionados, enquanto o particionamento em três faz com que os pixels localizados além do limite de imagem sejam particionados. Ou seja, apenas o particionamento de blocos em três é restrito.
[00162] As Figuras 19C e 19D ambos mostram o particionamento na direção vertical. No entanto, o particionamento em dois impede que os pixels localizados além do limite de imagem sejam particionados, enquanto o particionamento em três faz com que os pixels localizados além do limite de imagem sejam particionados. Ou seja, apenas o particionamento de blocos em três é restrito.
[00163] Mais especificamente, a determinação quanto à possibilidade de restringir o particionamento de bloco é diferente entre o particionamento em dois e o particionamento em três. Isso ocorre porque o particionamento em três faz com que o bloco seja particionado em uma posição próxima ao final do bloco, em comparação com o particionamento em dois. O particionamento em três tende a fazer com que os pixels localizados além do limite de imagem sejam particionados em comparação ao particionamento em dois. Portanto, no final do quadro, o bloco não é particionado em três, e uma determinação quanto à possibilidade de restringir uma direção na qual o bloco é particionado em dois pode ser feita. Isso torna possível reduzir o processo necessário para particionar o bloco em três e, assim, acelerar o processo de particionamento do bloco.
[00164] As restrições ao particionamento de bloco são aplicadas ao particionamento de um bloco localizado na extremidade do quadro em dois ou três. Ou seja, o processo de partição em dois ou três S1004 a S1010 mostrado na Figura 3 é substituído por um processo descrito abaixo. Além disso, o processo de partição em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo descrito abaixo. Além disso, o processo de partição em dois ou três S1202 a S1208 mostrado na Figura 8 é substituído pelo processo descrito abaixo.
[00165] Uma descrição será fornecida das restrições no particionamento de blocos com referência à Figura 20. A Figura 20 é igual à Figura 11, mas sem alguns processos. Portanto, o mesmo número de etapa mostrado na Figura 11 é atribuído e a descrição pode ser omitida.
[00166] Em primeiro lugar, para todos os padrões de particionamento de bloco, é feita uma determinação quanto à restrição de particionamento de bloco (S1901). Todos os padrões de particionamento de bloco incluem dois padrões: um padrão onde o bloco é particionado em dois na direção horizontal e um padrão onde o bloco é particionado em dois na direção vertical. Além disso, a restrição do particionamento do bloco é determinada com base no fato de os pixels localizados além do limite de imagem serem particionados. Por exemplo, quando o bloco é particionado em dois na direção horizontal e os pixels localizados além do limite de imagem são particionados de acordo, o particionamento do bloco em dois na direção horizontal é restrito. S1302 e os processos subsequentes são os mesmos mostrados na Figura 11, mas sem os processos relacionados ao particionamento em três; portanto, nenhuma descrição será fornecida de S1302 e dos processos subsequentes.
[00167] Uma descrição será fornecida abaixo de um exemplo específico com referência à Figura 19A. No caso da Figura 19A, para todos os padrões de particionamento de bloco, uma determinação é feita quanto à possibilidade de restringir o particionamento de bloco S1901. Quando o bloco é particionado em dois na direção horizontal, os pixels localizados além do limite de imagem não são particionados, de modo que o particionamento na direção horizontal não seja restrito. Além disso, quando o bloco é particionado em dois na direção vertical, os pixels localizados além do limite de imagem são particionados, de modo que o particionamento na direção vertical seja restrito. Portanto, o particionamento de bloco não é restrito a todos os padrões de particionamento de bloco S1302: NÃO. O particionamento de blocos na direção horizontal não é restrito S1303: NÃO, e o particionamento de blocos na direção vertical é restrito S1304: SIM. Ou seja, o bloco é particionado em dois na direção horizontal S1312.
[00168] Aqui, considere um padrão em que o limite de imagem está mais próximo do topo ou da esquerda do que os limites da imagem mostrados na Figura 19. Isso faz com que, em qualquer padrão, os pixels localizados além do limite de imagem sejam particionados. Portanto, no final do quadro, o particionamento do bloco em dois e o particionamento do bloco em três podem ser sempre restritos.
[00169] Esse controle na partição do bloco permite que o bloco localizado na extremidade do quadro seja particionado em blocos de tamanho e formato apropriados e, assim, permite um aumento na eficiência da codificação. Isso permite ainda o particionamento de blocos adequado para codificação e decodificação de imagens.
QUINTA MODALIDADE
[00170] Uma descrição será dada de um dispositivo de codificação de imagem e um dispositivo de decodificação de imagem de acordo com a quinta modalidade da presente revelação. De acordo com a quinta modalidade, serão descritas as restrições à partição do bloco na extremidade inferior direita da estrutura. As outras configurações são iguais às de acordo com a primeira modalidade; portanto, nenhuma descrição será fornecida das outras configurações.
[00171] Conforme mostrado na Figura 9, os blocos de árvore localizados na extremidade do quadro podem conter as porções dentro e fora do quadro ao longo do limite de imagem. Em particular, a porção fora da estrutura contida no bloco de árvore 1003 localizado na extremidade inferior direita da estrutura tende a ser maior do que a porção fora da estrutura contida no bloco de árvore 1001 localizada na extremidade direita da estrutura ou na parte fora da estrutura contida no bloco de árvore 1002 localizado na extremidade inferior da estrutura. Portanto, as restrições no particionamento de bloco têm grande probabilidade de aumentar a eficiência da codificação. Quando o bloco de árvore é particionado, o particionamento de blocos contidos no bloco de árvore obtido pelo particionamento é restrito.
[00172] Será dada uma descrição das restrições ao particionamento de bloco na extremidade inferior direita do quadro com referência à Figura 20. O bloco localizado na extremidade inferior direita do quadro corresponde ao bloco de árvore 1003 mostrado na Figura 9.
[00173] Em primeiro lugar, para todos os padrões de particionamento de bloco, é feita uma determinação quanto à restrição de particionamento de bloco (S1901). Todos os padrões de particionamento de bloco incluem dois padrões: um padrão onde o bloco é particionado em dois na direção horizontal e um padrão onde o bloco é particionado em dois na direção vertical. Além disso, a restrição do particionamento do bloco é determinada com base no fato de os pixels localizados além do limite de imagem serem particionados. Por exemplo, quando o bloco é particionado em dois na direção horizontal e os pixels localizados além do limite de imagem são particionados de acordo, o particionamento do bloco em dois na direção horizontal é restrito.
[00174] Como o bloco está localizado na extremidade inferior direita do quadro, os pixels localizados além do limite de imagem são particionados para todos os padrões de particionamento de bloco. Quando o particionamento de bloco é restrito para todos os padrões (S1302: SIM), o bloco não está particionado (S1314).
[00175] Uma descrição será fornecida abaixo de um exemplo específico com referência à Figura 21. As Figuras 21A e 21B mostram todos os padrões de partição de bloco para o bloco de árvore localizado na extremidade inferior direita do quadro. Conforme mostrado em ambas as Figuras 21A e 21B, os pixels localizados além do limite de imagem são particionados. Quando o particionamento de bloco é restrito para todos os padrões (S1302: SIM), o bloco não está particionado (S1314).
[00176] A Figura 21C mostra um exemplo em que o limite de imagem é o mesmo mostrado na Figura 21A e o bloco de árvore é particionado em quatro. Suponha que os quatro blocos obtidos por particionamento são denotados pelos blocos 601, 602, 603, 604 na ordem de z-scan. Será fornecida uma descrição de cada etapa do particionamento do bloco com referência à Figura 21C.
[00177] A Figura 21C mostra o particionamento de blocos feito pelas etapas a seguir. Primeiro, no processo mostrado na Figura 3, a imagem é particionada em blocos de árvore S1000, é determinado que o interior de cada bloco de árvore é particionado em quatro S1001: SIM, e o bloco de árvore é particionado em quatro S1002. O processo mostrado na Figura 7 é realizado em cada um dos blocos 601, 602, 603, 604 obtidos por partição em quatro.
[00178] Na Figura 7, é determinado que o interior do bloco obtido por particionamento não é particionado em quatro S1101: NÃO, e então é determinado que o interior do bloco é particionado em dois ou três S1103: SIM. O processo de particionamento em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo mostrado na Figura 20.
[00179] Conforme mostrado na Figura 20, para todos os padrões de particionamento de bloco, uma determinação é feita para restringir o particionamento de bloco S1901. Como o bloco está localizado na extremidade inferior direita do quadro, os pixels localizados além do limite de imagem são particionados para todos os padrões de particionamento de bloco. Quando o particionamento de bloco é restrito para todos os padrões S1302: SIM, o bloco não está particionado S1314. Em seguida, o particionamento de blocos mostrado na Figura 21C é encerrado.
[00180] A Figura 21D mostra um exemplo onde o limite de imagem é diferente do limite de imagem mostrado na Figura 21C, e o bloco de árvore é particionado em quatro. Este exemplo mostra o particionamento de bloco complicado de acordo com uma combinação das modalidades descritas acima. Dos quatro blocos obtidos por particionamento, os blocos 602, 603 são ainda particionados em blocos. Será fornecida uma descrição de cada etapa de particionamento do bloco a ser realizada, após o bloco de árvore ser particionado em quatro S1002, em cada um dos quatro blocos 601, 602, 603, 604.
[00181] O processo mostrado na Figura 7 é realizado no bloco 601. Na Figura 7, é determinado que o interior do bloco obtido por particionamento não é particionado em quatro S1101: NÃO, e então é determinado que o interior do bloco não está particionado em dois ou três S1103: NÃO. O processo de particionamento de bloco é encerrado sem particionar mais o interior do bloco 601 S1111.
[00182] O processo mostrado na Figura 7 é realizado no bloco 602. Na Figura 7, é determinado que o interior do bloco obtido por particionamento não é particionado em quatro S1101: NÃO, e então é determinado que o interior do bloco é particionado em dois ou três S1103: SIM. O processo de particionamento em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo mostrado na Figura 20.
[00183] Conforme mostrado na Figura 20, para todos os padrões de particionamento de bloco, uma determinação é feita para restringir o particionamento de bloco S1901. Quando o bloco é particionado em dois na direção horizontal, os pixels localizados além do limite de imagem são particionados, de modo que o particionamento na direção horizontal seja restrito. Além disso, quando o bloco é particionado em dois na direção vertical, os pixels localizados além do limite de imagem não são particionados, de modo que o particionamento na direção vertical não seja restrito. Portanto, o particionamento de bloco não é restrito a todos os padrões de particionamento de bloco S1302: NÃO. Então, o particionamento do bloco na direção horizontal é restrito S1303: SIM. Ou seja, o bloco é particionado em dois na direção vertical S1308. No final, o bloco 602 é particionado na direção vertical ao longo de uma partição 612.
[00184] O processo mostrado na Figura 7 é realizado no bloco 603. Na Figura 7, é determinado que o interior do bloco obtido por particionamento não é particionado em quatro S1101: NÃO, e então é determinado que o interior do bloco é particionado em dois ou três S1103: SIM. O processo de particionamento em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo mostrado na Figura 18.
[00185] Conforme mostrado na Figura 18, para todos os padrões de particionamento de bloco, o número de pixels localizados além do limite de imagem é contado S1651. Todos os padrões de particionamento de bloco incluem dois padrões: um padrão onde o bloco é particionado em dois na direção horizontal e um padrão onde o bloco é particionado em dois na direção vertical. Conforme mostrado nas Figuras 17A e 17B, o número de pixels localizados além do limite de imagem torna-se maior quando o bloco 603 é particionado na direção horizontal. Portanto, a direção de partição na qual o bloco é particionado em dois e pela qual o número de pixels localizados além do limite de imagem se torna o maior é determinada como a direção horizontal S1652. Em seguida, o bloco é particionado em dois na direção de partição assim determinada S1654. No final, o bloco 603 é particionado na direção horizontal ao longo de uma partição 623.
[00186] O processo mostrado na Figura 7 é realizado no bloco 604. Na Figura 7, é determinado que o interior do bloco obtido por particionamento não é particionado em quatro S1101: NÃO, e então é determinado que o interior do bloco é particionado em dois ou três S1103: SIM. O processo de particionamento em dois ou três S1104 a S1110 mostrado na Figura 7 é substituído pelo processo mostrado na Figura 20.
[00187] Conforme mostrado na Figura 20, para todos os padrões de particionamento de bloco, uma determinação é feita para restringir o particionamento de bloco S1901. Quando o bloco é particionado em dois na direção horizontal ao longo de uma partição 624, os pixels localizados além do limite de imagem são particionados, de modo que o particionamento na direção horizontal seja restrito. Além disso, quando o bloco é particionado em dois na direção vertical ao longo de uma partição 614, os pixels localizados além do limite de imagem são particionados, de modo que o particionamento na direção vertical seja restrito. Ou seja, para todos os padrões de particionamento de bloco, os pixels localizados além do limite de imagem são particionados. Quando o particionamento de bloco é restrito para todos os padrões S1302: SIM, o bloco não está particionado S1314.
[00188] Esse controle na partição do bloco permite que o bloco localizado na extremidade do quadro seja particionado em blocos de tamanho e formato apropriados e, assim, permite um aumento na eficiência da codificação. Isso permite ainda o particionamento de blocos adequado para codificação e decodificação de imagens.
[00189] De acordo com todas as modalidades descritas acima, uma posição além do limite de imagem é colocada sob o controle de particionamento do bloco. Consequentemente, com qualquer limite desejado definido, a posição além do limite pode ser colocada sob o controle de particionamento do bloco. Além disso, com pixels mais importantes do que os pixels vizinhos definidos como qualquer limite desejado, a posição além do limite pode ser colocada sob o controle de particionamento de bloco. Além disso, a posição além de qualquer limite desejado não está limitada à extremidade inferior ou à direita da estrutura, mas pode ser a extremidade superior ou a extremidade esquerda da estrutura, ou pode ser diferente de tais extremidades. Isso permite que mesmo um bloco que não está localizado na extremidade do quadro seja particionado em blocos de tamanho e formato apropriados e, assim, permite um aumento na eficiência da codificação.
[00190] Todas ou algumas das modalidades descritas acima podem ser combinadas.
[00191] De acordo com todas as modalidades descritas acima, a saída de fluxo de bits pelo dispositivo de codificação de imagem tem um formato de dados específico de modo a ser decodificável de acordo com o método de codificação usado nas modalidades. O fluxo de bits pode ser entregue por meio de um meio de gravação que é legível por um computador ou semelhante e no qual o fluxo de bits é gravado, como um HDD, um SSD, uma memória flash ou um disco óptico ou, alternativamente, pode ser entregue a partir de um servidor por meio de uma rede com fio ou sem fio. Portanto, o dispositivo de decodificação de imagem compatível com este dispositivo de codificação de imagem é capaz de decodificar o fluxo de bits com este formato de dados específico, independentemente dos métodos de entrega.
[00192] Quando uma rede com fio ou sem fio é usada para trocar o fluxo de bits entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem, o fluxo de bits pode ser convertido em um formato de dados adequado para uma forma de transmissão de um caminho de comunicação e então transmitido. Neste caso, um dispositivo de transmissão que converte a saída de fluxo de bits pelo dispositivo de codificação de imagem em dados codificados que tem um formato de dados adequado para a forma de transmissão do caminho de comunicação e transmite os dados codificados para a rede e um dispositivo de recepção que recebe os dados codificados pela rede, decodifica os dados codificados no fluxo de bits e fornece o fluxo de bits para o dispositivo de decodificação de imagem.
[00193] O dispositivo de transmissão inclui uma memória que serve como um armazenamento temporário para armazenar a saída do fluxo de bits pelo dispositivo de codificação de imagem, um processador de pacotes que empacota o fluxo de bits e um transmissor que transmite os dados codificados em pacotes pela rede. O dispositivo receptor inclui um receptor que recebe os dados codificados em pacotes pela rede, uma memória que serve como um armazenamento temporário para armazenar os dados codificados assim recebidos, e um processador de pacote que executa o processamento de pacote nos dados codificados para gerar o fluxo de bits e entrega o fluxo de bits ao dispositivo de decodificação de imagem.
[00194] Quando uma rede com fio ou sem fio é usada para trocar o fluxo de bits entre o dispositivo de codificação de imagem e o dispositivo de decodificação de imagem, além do dispositivo de transmissão e do dispositivo de recepção, um dispositivo de retransmissão que recebe os dados codificados transmitidos pelo dispositivo de transmissão e fornece os dados codificados ao dispositivo de recepção pode ser ainda fornecido. O dispositivo de retransmissão inclui um receptor que recebe os dados codificados em pacote transmitidos pelo dispositivo de transmissão, uma memória que serve como um armazenamento temporário para armazenar os dados codificados assim recebidos e um transmissor que transmite os dados codificados em pacote para a rede. O dispositivo de retransmissão pode ainda incluir um processador de pacote de recepção que executa o processamento de pacote nos dados codificados em pacote para gerar o fluxo de bits, um meio de gravação que armazena o fluxo de bits e um processador de pacotes de transmissão que empacota o fluxo de bits.
[00195] Além disso, um visor que exibe uma imagem decodificada pelo dispositivo de decodificação de imagem pode ser adicionado como um componente que serve como um dispositivo de exibição. Neste caso, o visor lê um sinal de imagem decodificado gerado pela parte de sobreposição do sinal de imagem decodificado 205 e armazenado na memória de imagem decodificada 206 e exibe o sinal de imagem decodificado na tela.
[00196] Além disso, uma parte de imagem que insere uma imagem capturada no dispositivo de codificação de imagem pode ser adicionada como um componente que serve como um dispositivo de imagem. Neste caso, a parte de imagem entra com um sinal de imagem capturado para o particionador de bloco 101.
[00197] A Figura 22 mostra um exemplo de uma estrutura de hardware de um dispositivo de codificação e decodificação de acordo com o presente pedido. O dispositivo de codificação e decodificação inclui a estrutura do dispositivo de codificação de imagem e a estrutura do dispositivo de decodificação de imagem de acordo com as modalidades da presente revelação. O dispositivo de codificação e decodificação 9000 inclui uma CPU 9001, um codec IC 9002, uma interface E/S 9003, uma memória 9004, uma unidade de disco óptico 9005, uma interface de rede 9006 e uma interface de vídeo 9009, e todos os componentes estão conectados por um barramento 9010.
[00198] Um codificador de imagem 9007 e um decodificador de imagem 9008 são tipicamente implementados como o codec IC 9002. O processo de codificação de imagem no dispositivo de codificação de imagem de acordo com as modalidades da presente revelação é realizado pelo codificador de imagem 9007, e o processo de decodificação de imagem no dispositivo de decodificação de imagem de acordo com as modalidades da presente revelação é realizado pelo codificador de imagem 9007. A interface E/S 9003 é implementada por meio de, por exemplo, uma interface USB e é conectada a um teclado externo 9104, um mouse 9105 ou semelhante. A CPU 9001 controla o dispositivo de codificação e decodificação 9000 para realizar uma operação desejada por um usuário de acordo com a entrada de operação do usuário através da interface E/S 9003. A operação do usuário feita com o teclado 9104, o mouse 9105 ou semelhantes inclui a seleção de funções de codificação e decodificação a serem realizadas, configuração da qualidade de codificação, destinos de entrada e saída de um fluxo de bits, destinos de entrada e saída de uma imagem e similares.
[00199] Quando o usuário deseja reproduzir uma imagem gravada no meio de gravação de disco 9100, a unidade de disco óptico 9005 lê o fluxo de bits do meio de gravação de disco inserido 9100 e transmite o fluxo de bits assim lido para o decodificador de imagem 9008 do codec IC 9002 pelo barramento 9010. O decodificador de imagem 9008 realiza o processo de decodificação de imagem no dispositivo de decodificação de imagem de acordo com as modalidades da presente revelação no fluxo de bits, assim, introduz e transmite a imagem decodificada para um monitor externo 9103 através da interface de vídeo 9009. Além disso, o dispositivo de codificação e decodificação 9000 inclui a interface de rede 9006 de modo a ser conectável a um servidor de distribuição externo 9106 ou um terminal móvel 9107 através da rede 9101. Quando o usuário deseja reproduzir uma imagem gravada no servidor de distribuição 9106 ou no terminal móvel 9107 em vez da imagem gravada no meio de gravação de disco 9100, a interface de rede 9006 recupera o fluxo de bits pela rede 9101 em vez de ler o fluxo de bits do meio de gravação de disco 9100 inserido. Além disso, quando o usuário deseja reproduzir uma imagem gravada na memória 9004, o processo de decodificação de imagem no dispositivo de decodificação de imagem de acordo com as modalidades da presente revelação é realizado no fluxo de bits gravado na memória 9004.
[00200] Quando o usuário deseja uma operação de codificação de uma imagem capturada por uma câmera externa 9102 e gravação da imagem assim codificada na memória 9004, a interface de vídeo 9009 recebe a imagem da câmera 9102 e transmite a imagem para o codificador de imagem 9007 do codec IC 9002 através do barramento
9010. O codificador de imagem 9007 executa o processo de codificação de imagem no dispositivo de codificação de imagem de acordo com as modalidades da presente revelação na entrada de imagem através da interface de vídeo 9009 para criar um fluxo de bits. Em seguida, o fluxo de bits é transmitido para a memória 9004 através do barramento 9010. Quando o usuário deseja gravar o fluxo de bits no meio de gravação de disco 9100 em vez da memória 9004, a unidade de disco óptico 9005 grava o fluxo de bits no meio de gravação de disco 9100 inserido.
[00201] Uma estrutura de hardware que tem o dispositivo de codificação de imagem e não tendo dispositivo de decodificação de imagem, ou uma estrutura de hardware tendo o dispositivo de decodificação de imagem e não tendo dispositivo de codificação de imagem pode ser implementada. Tal estrutura de hardware é implementada, por exemplo, substituindo o codec IC 9002 pelo codificador de imagem 9007 ou o decodificador de imagem 9008.
[00202] É desnecessário dizer que os processos descritos acima para codificação e decodificação podem ser implementados como um dispositivo de transmissão, um dispositivo de armazenamento e um dispositivo de recepção usando hardware, ou, alternativamente, pode ser implementado por meio de firmware armazenado em uma memória somente leitura (ROM), uma memória flash ou semelhante ou software instalado em um computador ou semelhante. O programa de firmware e o programa de software podem ser entregues por meio de uma mídia de gravação que pode ser lida por um computador ou semelhante e no qual o programa de firmware e o programa de software são gravados, podem ser entregues a partir de um servidor por meio de uma rede com fio ou sem fio, ou podem ser entregues por meio de transmissão de dados, como transmissão digital terrestre ou transmissão digital por satélite.
[00203] A presente revelação foi descrita com base nas modalidades. Deve ser entendido por aqueles versados na técnica que essas modalidades são ilustrativas e que várias modificações são possíveis para uma combinação de componentes ou processos, e que tais modificações também estão dentro do escopo da presente revelação.
APLICABILIDADE INDUSTRIAL
[00204] A presente revelação é aplicável a técnicas para codificar e decodificar imagens.
LISTA DE SINAIS DE REFERÊNCIAS
[00205] 100 dispositivo de codificação de imagem, 101 particionador de bloco, 102 gerador de imagem de predição, 103 gerador de sinal residual, 104 transformação ortogonal e parte de quantização, 105 codificador, 106 quantização inversa e parte de transformação ortogonal inversa, 107 parte de sobreposição do sinal de imagem decodificada, 108 memória de imagem decodificada, 200 dispositivo de decodificação de imagem, 201 decodificador, 202 particionador de bloco, 203 quantização inversa e parte de transformação ortogonal inversa, 204 gerador de previsão de imagem, 205 parte de sobreposição de sinal de imagem decodificada, 206 memória de imagem decodificada

Claims (4)

REIVINDICAÇÕES
1. Dispositivo de decodificação de imagem (200) estruturado para decodificar uma imagem em unidades de blocos obtidas por particionamento, caracterizado pelo fato de que compreende: um decodificador (201) estruturado para decodificar informações de particionamento de bloco em um bloco-alvo; e um particionador de bloco (202) estruturado para particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base nas informações de particionamento de bloco para gerar o bloco-alvo, em que o particionador de bloco (202) inclui um divisor quádruplo estruturado para particionar o bloco- alvo obtido por particionamento recursivo pela metade tanto em uma direção horizontal quanto em uma direção vertical para gerar quatro blocos, e um divisor binário/ternário estruturado para particionar o bloco-alvo obtido por particionamento recursivo em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos, em que o divisor binário/ternário proíbe o particionamento do bloco- alvo, por uma linha de divisão, na direção horizontal e permite o particionamento do bloco-alvo por uma linha de divisão na direção vertical quando o particionamento do bloco-alvo, por uma linha de divisão, na direção horizontal faz com que o bloco-alvo obtido por particionamento esteja localizado além de um lado direito (501, 522) de um limite de imagem, e proíbe o particionamento do bloco-alvo, por uma linha de divisão, na direção vertical e permite o particionamento do bloco-alvo por uma linha de divisão na direção horizontal quando o particionamento do bloco-alvo, por uma linha de divisão, na direção vertical faz com que o bloco-alvo obtido por particionamento seja localizado além de um lado inferior (511, 532) do limite de imagem.
2. Método de decodificação de imagem para decodificar uma imagem em unidades de blocos obtidas por particionamento, caracterizado pelo fato de que compreende: uma etapa de decodificação de informações de particionamento de bloco de decodificação em um bloco-alvo; e uma etapa de particionamento de bloco de particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base nas informações de particionamento de bloco para gerar o bloco-alvo, em que a etapa de particionamento de bloco inclui uma etapa de divisão quádrupla de particionamento do bloco-alvo obtido por particionamento recursivo ao meio, tanto em uma direção horizontal quanto em uma direção vertical, para gerar quatro blocos, e uma etapa de divisão binária/ternária de particionar o bloco- alvo obtido por particionamento recursivo em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos, em que a etapa de divisão binária/ternária proíbe o particionamento do bloco-alvo, por uma linha de divisão, na direção horizontal e permite o particionamento do bloco-alvo por uma linha de divisão na direção vertical quando o particionamento do bloco-alvo, por uma linha de divisão, na direção horizontal faz com que o bloco-alvo obtido por particionamento esteja localizado além de um lado direito (501, 522) de um limite de imagem, e proíbe o particionamento do bloco-alvo, por uma linha de divisão, na direção vertical e permite o particionamento do bloco-alvo por uma linha de divisão na direção horizontal quando o particionamento do bloco-alvo, por uma linha de divisão, na direção vertical faz com que o bloco-alvo obtido por particionamento seja localizado além de um lado inferior (511, 532) do limite de imagem.
3. Dispositivo de codificação de imagem (100) estruturado para codificar uma imagem em unidades de blocos obtidas por particionamento, caracterizado pelo fato de que compreende: um codificador (105) estruturado para codificar informações de particionamento de bloco em um bloco-alvo; e um particionador de bloco (101) estruturado para particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base nas informações de particionamento de bloco para gerar o bloco-alvo, em que o particionador de bloco inclui um divisor quádruplo estruturado para particionar o bloco- alvo obtido por particionamento recursivo pela metade tanto em uma direção horizontal quanto em uma direção vertical para gerar quatro blocos, e um divisor binário/ternário estruturado para particionar o bloco-alvo obtido por particionamento recursivo em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos, em que o divisor binário/ternário proíbe o particionamento do bloco- alvo por uma linha de divisão na direção horizontal e permite o particionamento do bloco-alvo por uma linha de divisão na direção vertical quando o particionamento do bloco-alvo por uma linha de divisão na direção horizontal faz com que o bloco-alvo obtido por particionamento esteja localizado além de um lado direito (501, 522) de um limite de imagem, e proíbe o particionamento do bloco-alvo por uma linha de divisão na direção vertical e permite o particionamento do bloco- alvo por uma linha de divisão na direção horizontal quando o particionamento do bloco-alvo por uma linha de divisão na direção vertical faz com que o bloco-alvo obtido por particionamento seja localizado além de um lado inferior (511, 532) do limite de imagem.
4. Método de codificação de imagem para codificar uma imagem em unidades de blocos obtidas por particionamento,
caracterizado pelo fato de que compreende: uma etapa de codificação de informações de particionamento de bloco de codificação em um bloco-alvo; e uma etapa de particionamento de bloco de particionar recursivamente a imagem em retângulos de um tamanho predeterminado com base nas informações de particionamento de bloco para gerar o bloco-alvo, em que a etapa de particionamento de bloco inclui uma etapa de divisão quádrupla de particionamento do bloco-alvo obtido por particionamento recursivo ao meio, tanto em uma direção horizontal quanto em uma direção vertical, para gerar quatro blocos, e uma etapa de divisão binária/ternária de particionar o bloco- alvo obtido por particionamento recursivo em dois ou três na direção horizontal ou na direção vertical para gerar dois ou três blocos, em que a etapa de divisão binária/ternária proíbe o particionamento do bloco-alvo por uma linha de divisão na direção horizontal e permite o particionamento do bloco-alvo por uma linha de divisão na direção vertical quando o particionamento do bloco-alvo por uma linha de divisão na direção horizontal faz com que o bloco-alvo obtido por particionamento esteja localizado além de um lado direito (501, 522) de um limite de imagem, e proíbe o particionamento do bloco-alvo por uma linha de divisão na direção vertical e permite o particionamento do bloco- alvo por uma linha de divisão na direção horizontal quando o particionamento do bloco-alvo por uma linha de divisão na direção vertical faz com que o bloco-alvo obtido por particionamento seja localizado além de um lado inferior (511, 532) do limite de imagem.
PARTE DE Petição 870210023282, de 11/03/2021, pág. 88/114
GERADOR DE
PARTICIONADOR TRANSFORMAÇÃO
SINAL CODIFICADOR
DE BLOCO E QUANTIZAÇÃO
RESIDUAL
ORTOGONAL
PARTE DE
QUANTIZAÇÃO
INVERSA E
TRANSFORMAÇÃO
ORTOGONAL
INVERSA 1/27
PARTE DE
SUPERIMPOSIÇÃO
DE SINAL DE
IMAGEM
DECODIFICADA
GERADOR DE MEMÓRIA DE
IMAGEM DE IMAGEM DE
PREDIÇÃO DECODIFICADA
DISPOSITIVO DE CODIFICAÇÃO DE IMAGEM
Petição 870210023282, de 11/03/2021, pág. 89/114 PARTE DE QUANTI- PARTE DE
PARTICIONADOR ZAÇÃO INVERSA E SUPERIMPOSIÇÃO
DECODIFICADOR TRANSFORMAÇÃO DE SINAL DE
DE BLOCO ORTOGONAL IMAGEM
INVERSA DECODIFICADA 2/27
GERADOR DE MEMÓRIA DE
IMAGEM DE IMAGEM DE
PREDIÇÃO DECODIFICADA
DISPOSITIVO DE DECODIFICAÇÃO DE IMAGEM
INÍCIO Petição 870210023282, de 11/03/2021, pág. 90/114
PARTICIONAR A IMAGEM
EM BLOCO DE ÁRVORE
INTERIOR DO
BLOCO DE ÁRVORE ESTÁ PARTICIONADO NÃO EM QUATRO?
O INTERIOR DO
BLOCO DE ÁRVORE ESTÁ PARTICIONADO EM DOIS OU TRÊS? 3/27
SIM
PARTICIONAMENTO
NA DIREÇÃO VERTICAL É NÃO SIM REALIZADO?
SIM
PARTICIONAMENTO EM PARTICIONAMENTO EM DOIS É REALIZADO? DOIS É REALIZADO?
NÃO NÃO
SIM SIM
PARTICIONAR EM PARTICIONAR EM PARTICIONAR EM PARTICIONAR EM PARTICIONAR EM NÃO
QUATRO NAS DIREÇÕES DOIS NA DIREÇÃO TRÊS NA DIREÇÃO DOIS NA DIREÇÃO TRÊS NA DIREÇÃO PARTICIONAR VERTICAL E HORIZONTAL VERTICAL VERTICAL HORIZONTAL HORIZONTAL O BLOCO.
FIM
BR112021004638-0A 2018-11-30 2019-11-29 Dispositivo de decodificação de imagem, método de decodificação de imagem, dispositivo de codificação de imagem e método de codificação de imagem BR112021004638B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
JP2018-225467 2018-11-30
JP2018225467 2018-11-30
JP2019181258A JP6835177B2 (ja) 2018-11-30 2019-10-01 画像復号化装置、画像復号化方法及び画像復号化プログラム
JP2019-181258 2019-10-01
PCT/JP2019/046812 WO2020111240A1 (ja) 2018-11-30 2019-11-29 画像復号化装置、画像復号化方法及び画像復号化プログラム

Publications (2)

Publication Number Publication Date
BR112021004638A2 true BR112021004638A2 (pt) 2021-06-01
BR112021004638B1 BR112021004638B1 (pt) 2021-11-30

Family

ID=71085180

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112021004638-0A BR112021004638B1 (pt) 2018-11-30 2019-11-29 Dispositivo de decodificação de imagem, método de decodificação de imagem, dispositivo de codificação de imagem e método de codificação de imagem

Country Status (11)

Country Link
US (2) US11924420B2 (pt)
EP (1) EP3890318A4 (pt)
JP (4) JP6835177B2 (pt)
KR (2) KR20210015900A (pt)
CN (5) CN112385218A (pt)
BR (1) BR112021004638B1 (pt)
CA (1) CA3119628A1 (pt)
CL (1) CL2021001145A1 (pt)
MX (1) MX2021003466A (pt)
RU (1) RU2769965C1 (pt)
ZA (1) ZA202102036B (pt)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6835177B2 (ja) * 2018-11-30 2021-02-24 株式会社Jvcケンウッド 画像復号化装置、画像復号化方法及び画像復号化プログラム

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101452713B1 (ko) * 2009-10-30 2014-10-21 삼성전자주식회사 픽처 경계의 부호화 단위를 부호화, 복호화 하는 방법 및 장치
SI3249926T1 (sl) * 2011-12-13 2019-04-30 JVC Kenwood Corporation Naprava za dekodiranje videa, postopek za dekodiranje videa in program za dekodiranje videa
FR2992815A1 (fr) * 2012-06-27 2014-01-03 France Telecom Procede de codage d'un bloc courant d'une premiere composante d'image par rapport a un bloc de reference d'au moins une deuxieme composante d'image, dispositif de codage et programme d'ordinateur correspondant
WO2016203981A1 (ja) * 2015-06-16 2016-12-22 シャープ株式会社 画像復号装置及び画像符号化装置
MX2018014493A (es) 2016-05-25 2019-08-12 Arris Entpr Llc Particionamiento binario, ternario, cuaternario para jvet.
KR20190038910A (ko) * 2016-10-10 2019-04-09 삼성전자주식회사 픽처 외곽선의 부호화 단위를 부호화 또는 복호화하는 방법 및 장치
JP6565885B2 (ja) * 2016-12-06 2019-08-28 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法及び画像符号化プログラム、並びに画像復号化装置、画像復号化方法及び画像復号化プログラム
CN110178372B (zh) * 2016-12-16 2023-06-27 夏普株式会社 图像解码装置
EP3383043A1 (en) * 2017-03-27 2018-10-03 Thomson Licensing Methods and apparatus for picture encoding and decoding
US10911757B2 (en) * 2017-09-08 2021-02-02 Mediatek Inc. Methods and apparatuses of processing pictures in an image or video coding system
CN111149359B (zh) * 2017-09-20 2023-11-17 韩国电子通信研究院 用于对图像进行编码/解码的方法和装置以及存储有比特流的记录介质
JP7179080B2 (ja) * 2018-03-29 2022-11-28 フラウンホーファー-ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン 画像境界処理を使用して画像を符号化および復号する装置および方法
CN112771862A (zh) * 2018-09-19 2021-05-07 韩国电子通信研究院 通过使用边界处理对图像进行编码/解码的方法和设备以及用于存储比特流的记录介质
JP6835177B2 (ja) * 2018-11-30 2021-02-24 株式会社Jvcケンウッド 画像復号化装置、画像復号化方法及び画像復号化プログラム

Also Published As

Publication number Publication date
JP7052893B2 (ja) 2022-04-12
US20240163432A1 (en) 2024-05-16
MX2021003466A (es) 2021-06-18
BR112021004638B1 (pt) 2021-11-30
US20210274173A1 (en) 2021-09-02
CA3119628A1 (en) 2020-06-04
JP2020096345A (ja) 2020-06-18
US11924420B2 (en) 2024-03-05
EP3890318A4 (en) 2022-02-09
CN115442605A (zh) 2022-12-06
JP2023099775A (ja) 2023-07-13
RU2769965C1 (ru) 2022-04-11
KR20210015900A (ko) 2021-02-10
JP2021078145A (ja) 2021-05-20
RU2022108854A (ru) 2022-05-06
CN112911287B (zh) 2022-04-08
CN115442603A (zh) 2022-12-06
EP3890318A1 (en) 2021-10-06
KR20220140874A (ko) 2022-10-18
JP6835177B2 (ja) 2021-02-24
CN115442604A (zh) 2022-12-06
JP7287523B2 (ja) 2023-06-06
ZA202102036B (en) 2022-09-28
CN112385218A (zh) 2021-02-19
CL2021001145A1 (es) 2021-12-10
JP2022082596A (ja) 2022-06-02
CN112911287A (zh) 2021-06-04

Similar Documents

Publication Publication Date Title
BR122021011306A2 (pt) Método e aparelho de decodificação de imagem, método e aparelho de codificação de imagem e mídias de armazenamento não transitória legíveis por computador
BR122021010330B1 (pt) Método de codificação de imagem com base em transformada secundária não separável e dispositivo para o mesmo
BR112015001111B1 (pt) método de decodificação de desvio adaptativo de amostra (sao)
BR112021007865A2 (pt) método e aparelho de predição de imagem
BR112021012632A2 (pt) Codificador de vídeo, decodificador de vídeo e métodos correspondentes
JP2021517798A (ja) インター予測モードに基づいた映像処理方法及びそのための装置
BR112021003999A2 (pt) relação entre elementos de restrição de partição
ES2883951T3 (es) Procedimiento de composición de una representación de vídeo intermedia
BR112019006726B1 (pt) Dispositivo de codificação de imagem, método de codificação de imagem, dispositivo de decodificação de imagem e método de decodificação de imagem
EP3759920A1 (en) Signaling a constraint flag in a video bitstream
BR112021003967A2 (pt) método e dispositivos de interpredição bidirecional
US20240163432A1 (en) Picture decoding device, picture decoding method, and picture decoding program
BR112021012649A2 (pt) Codificador de vídeo, decodificador de vídeo e métodos correspondentes
BR112021003946A2 (pt) codificador de vídeo, decodificador de vídeo e métodos correspondentes
JP7395625B2 (ja) クロマブロックの分割条件を制限する画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
JP7502322B2 (ja) クロマブロックに対する分割制限を用いた画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
RU2783041C2 (ru) Устройство для декодирования изображения, способ декодирования изображения, устройство для кодирования изображения и способ кодирования изображения
JP2022530286A (ja) クロマブロックの適応的サイズ制限を用いた画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
JP2022530287A (ja) クロマブロックのサイズを制限する画像符号化/復号化方法、装置、及びビットストリームを伝送する方法
BR122023027000A2 (pt) Aparelho de codificação de imagem, aparelho de decodificação de imagem e aparelho para transmissão de dados para uma imagem
BR122023026987A2 (pt) Método de codificação de imagem, método de decodificação de imagem, método de transmitir um fluxo de bits e meio de gravação legível por computador não transitório
BR112021009686A2 (pt) Método e dispositivo de intrapredição

Legal Events

Date Code Title Description
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

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