BR122021002351B1 - Método e mídia de gravação não transitória legível por computador para decodificar vídeo - Google Patents

Método e mídia de gravação não transitória legível por computador para decodificar vídeo Download PDF

Info

Publication number
BR122021002351B1
BR122021002351B1 BR122021002351-4A BR122021002351A BR122021002351B1 BR 122021002351 B1 BR122021002351 B1 BR 122021002351B1 BR 122021002351 A BR122021002351 A BR 122021002351A BR 122021002351 B1 BR122021002351 B1 BR 122021002351B1
Authority
BR
Brazil
Prior art keywords
quantization matrix
size
coefficient
matrix
quantization
Prior art date
Application number
BR122021002351-4A
Other languages
English (en)
Inventor
Sung Chang Lim
Hui Yong Kim
Jin Ho Lee
Jin Soo Choi
Jin Woong Kim
Original Assignee
Electronics And Telecommunications Research Institute
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 Electronics And Telecommunications Research Institute filed Critical Electronics And Telecommunications Research Institute
Publication of BR122021002351B1 publication Critical patent/BR122021002351B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • 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/124Quantisation
    • H04N19/126Details of normalisation or weighting functions, e.g. normalisation matrices or variable uniform quantisers
    • 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/129Scanning of coding units, e.g. zig-zag scan of transform coefficients or flexible macroblock ordering [FMO]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/18Methods 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 a set of transform coefficients
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • H04N19/463Embedding additional information in the video signal during the compression process by compressing encoding parameters before transmission
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

Trata-se de um método e dispositivo para codificar/decodificar uma imagem. O método para decodificar uma imagem compreende as etapas de: decodificar as informações sobre uma matriz de quantização; e restaurar a matriz de quantização com base nas informações sobre a matriz de quantização, em que as informações sobre a matriz de quantização incluem informações indicando um valor DC da matriz de quantização e/ou informações indicando valores diferenciais de coeficientes de matriz de quantização.

Description

REFERÊNCIA REMISSIVA AOS PEDIDOS DE DEPÓSITO CORRELATOS
[001] O presente pedido reivindica o benefício de prioridade ao Pedido de Patente Coreano No. 10-2012-0039270 depositado em 16 de abril de 2012 e ao Pedido de Patente Coreano No. 10-2013-0041807 depositado em 16 de abril de 2013, estando ambos aqui incorporados em suas totalidades a título de referência.
CAMPO DA TÉCNICA
[002] A presente invenção refere-se à codificação e à decodificação de uma imagem e, mais particularmente, à codificação/decodificação de coeficientes de matriz de quantização.
FUNDAMENTOS
[003] À medida que a resolução em Alta Definição (HD) se expande e serve em âmbito nacional e mundial, muitos usuários estão habituados a imagens tendo alta resolução e alta qualidade de imagem. De modo correspondente, uma série de institutos está incentivando o desenvolvimento de dispositivos de imagens próximas. Adicionalmente, visto que há um interesse crescente em Definição Ultra Alta (UHD) com resolução 4 vezes superior a HDTV junto a HDTV, há uma necessidade por uma tecnologia na qual uma imagem tendo resolução superior e qualidade de imagem superior seja compactada e processada.
[004] Com o intuito de compactar uma imagem, uma tecnologia de interpredição na qual um valor de a pixel incluído em uma imagem atual é predita a partir de imagens temporalmente anteriores e/ou posteriores, uma tecnologia de intrapredição na qual um valor de a pixel incluído em uma imagem atual é predita usando informações sobre um pixel incluído na imagem atual, uma tecnologia de codificação por entropia na qual um sinal curto é atribuído a um símbolo tendo alta frequência de aparência e um sinal longo é atribuído a um símbolo tendo baixa frequência de aparência, etc. podem ser usadas.
REVELAÇÃO PROBLEMA TÉCNICO
[005] Um objetivo da presente invenção consiste em proporcionar um método e um aparelho de codificação/decodificação de imagens capazes de aperfeiçoar a eficiência de codificação/decodificação de imagens.
[006] Outro objetivo da presente invenção consiste em proporcionar um método e um aparelho para codificar/decodificar coeficientes de matriz de quantização que sejam capazes de aperfeiçoar a eficiência de codificação/decodificação de imagens.
[007] Ainda outro objetivo da presente invenção consiste em proporcionar um método e um aparelho para varrer uma matriz de quantização que sejam capazes de aperfeiçoar a eficiência de codificação/decodificação de imagens.
SOLUÇÃO TÉCNICA
[008] De acordo com um aspecto da presente invenção, proporciona-se um método de decodificação de imagens. O método de decodificação de imagens inclui decodificar informações sobre um a matriz de quantização e reconstruir uma matriz de quantização com base nas informações sobre a matriz de quantização, em que as informações sobre a matriz de quantização incluem pelo menos uma informação indicativa de um valor DC da matriz de quantização e informações indicativas de um valor de diferença entre os coeficientes de matriz de quantização.
[009] Se o tamanho de um bloco de coeficiente de transformada onde a matriz de quantização é usada for 16x16 ou 32x32, a matriz de quantização pode ser reconstruída usando as informações indicativas do valor DC da matriz de quantização.
[010] As informações indicativas do valor DC da matriz de quantização podem ser decodificadas em um valor entre -7 e 247.
[011] A reconstrução de uma matriz de quantização com base nas informações sobre a matriz de quantização pode incluir derivar um coeficiente de matriz de quan- tização usando as informações indicativas do valor de diferença entre os coeficientes de matriz de quantização e dispor os coeficientes de matriz de quantização na matriz de quantização realizando-se uma varredura nos coeficientes de matriz de quantiza- ção.
[012] As informações indicativas do valor de diferença entre os coeficientes de matriz de quantização pode incluir um valor de diferença entre um coeficiente de matriz de quantização atual e um coeficiente de matriz de quantização prévio decodificado antes do coeficiente de matriz de quantização atual, e o coeficiente de matriz de quantização pode ser derivado adicionando-se o coeficiente de matriz de quanti- zação prévio ao valor de diferença entre os coeficientes de matriz de quantização para o coeficiente de matriz de quantização atual.
[013] Os coeficientes de matriz de quantização podem ser dispostos na matriz de quantização realizando-se uma varredura diagonal nos coeficientes de matriz de quantização.
[014] Se a matriz de quantização for usada em um bloco de coeficiente de transformada tendo um tamanho 4x4, a varredura diagonal tendo um tamanho 4x4 pode ser realizada nos coeficientes de matriz de quantização. Se a matriz de quantização for usada em um bloco de coeficiente de transformada tendo um dos tamanhos 8x8, 16x16, e 32x32, a varredura diagonal tendo um tamanho 8x8 pode ser realizada nos coeficientes de matriz de quantização.
[015] De acordo com outro aspecto da presente invenção, proporciona-se um aparelho de decodificação de imagens. O aparelho de decodificação de imagens decodifica informações sobre um coeficiente de matriz de quantização e reconstrói uma matriz de quantização com base nas informações sobre o coeficiente de matriz de quantização, em que as informações sobre o coeficiente de matriz de quantização incluem pelo menos uma entre as informações indicativas de um valor DC da matriz de quantização e as informações indicativas de um valor de diferença entre os coeficientes de matriz de quantização.
[016] De acordo com ainda outro aspecto da presente invenção, proporciona-se um método de codificação de imagens. O método de codificação de imagens inclui determinar uma matriz de quantização usada na quantização e codificar as informações sobre a matriz de quantização, em que as informações sobre a matriz de quan- tização incluem pelo menos uma entre as informações indicativas de um valor DC da matriz de quantização e as informações indicativas de um valor de diferença entre os coeficientes de matriz de quantização.
[017] Se o tamanho de um bloco de coeficiente de transformada onde a matriz de quantização é usada for 16x16 ou 32x32, as informações indicativas do valor DC da matriz de quantização podem ser codificadas.
[018] As informações indicativas do valor DC da matriz de quantização podem ser codificadas em um valor entre -7 e 247.
[019] A codificação de informações sobre a matriz de quantização pode incluir derivar um arranjo de coeficientes de matriz de quantização dispostos realizando-se uma varredura na matriz de quantização e gerando-se informações indicativas de um valor de diferença entre os coeficientes de matriz de quantização dispostos e codificar o arranjo dos coeficientes de matriz de quantização dispostos usando as informações geradas.
[020] O arranjo dos coeficientes de matriz de quantização dispostos pode ser derivado realizando-se uma varredura diagonal na matriz de quantização.
[021] As informações indicativas do valor de diferença entre os coeficientes de matriz de quantização dispostos podem incluir um valor de diferença entre um coeficiente de matriz de quantização atual e um coeficiente de matriz de quantização prévio codificado previamente ao coeficiente de matriz de quantização atual no arranjo dos coeficientes de matriz de quantização dispostos.
[022] Se a matriz de quantização for usada em um bloco de coeficiente de transformada tendo um tamanho 4x4, pode-se realizar uma varredura diagonal tendo um tamanho 4x4 na matriz de quantização. Se a matriz de quantização for usada em um bloco de coeficiente de transformada tendo um entre os tamanhos 8x8, 16x16, e 32x32, pode-se realizar uma varredura diagonal tendo um tamanho 8x8 na matriz de quantização.
[023] De acordo com ainda outro aspecto adicional da presente invenção, proporciona-se um aparelho de codificação de imagens. O aparelho de codificação de imagens determina uma matriz de quantização usada na quantização e codifica informações sobre a matriz de quantização, em que as informações sobre a matriz de quantização incluem pelo menos uma entre as informações indicativas de um valor DC da matriz de quantização e as informações indicativas de um valor de diferença entre os coeficientes de matriz de quantização.
EFEITOS VANTAJOSOS
[024] A presente invenção pode reduzir a lógica necessária para implementar uma varredura em zigue-zague e um espaço de memória para armazenar os arranjos de varredura em zigue-zague em um codificador e em um decodificador proporcionando-se um método para varrer coeficientes de matriz de quantização.
DESCRIÇÃO DOS DESENHOS
[025] A Figura 1 é um diagrama de blocos que mostra uma construção de acordo com uma modalidade de um aparelho de codificação de imagens ao qual a presente invenção se aplica;
[026] A Figura 2 é um diagrama de blocos que mostra uma construção de acordo com uma modalidade de um aparelho de decodificação de imagens ao qual a presente invenção se aplica;
[027] A Figura 3 é um diagrama conceitual que mostra esquematicamente uma modalidade na qual uma unidade é particionada em uma pluralidade de subunida- des;
[028] A Figura 4 é um fluxograma que ilustra esquematicamente um método de codificar uma matriz de quantização de acordo com uma modalidade da presente invenção;
[029] A Figura 5 é um fluxograma que ilustra esquematicamente um método de codificação preditiva em coeficientes de matriz de quantização de acordo com uma modalidade da presente invenção;
[030] A Figura 6 é um diagrama que mostra um exemplo de varredura diagonal que pode ser aplicada a uma matriz de quantização tendo um tamanho 4x4 ou 8x8 de acordo com uma modalidade da presente invenção;
[031] A Figura 7 é um diagrama que mostra um exemplo de varredura horizontal que pode ser aplicada a uma matriz de quantização tendo um tamanho 4x4 ou 8x8 de acordo com uma modalidade da presente invenção;
[032] A Figura 8 é um diagrama que mostra um exemplo de varredura vertical que pode ser aplicada a uma matriz de quantização tendo um tamanho 4x4 ou 8x8 de acordo com uma modalidade da presente invenção;
[033] A Figura 9 é um diagrama que mostra um exemplo de varredura diagonal baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção;
[034] A Figura 10 é um diagrama que mostra um exemplo de varredura horizontal baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção;
[035] Figura 11 é um diagrama que mostra um exemplo de varredura vertical baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção;
[036] A Figura 12 é um diagrama que mostro outro exemplo de varredura horizontal baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção;
[037] A Figura 13 é um diagrama que mostra outro exemplo de varredura vertical baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção;
[038] A Figura 14 é um fluxograma que ilustra esquematicamente um método de decodificar uma matriz de quantização de acordo com uma modalidade da presente invenção;
[039] A Figura 15 é um diagrama que ilustra um método de amostrar ascendentemente uma matriz de quantização à qual a presente invenção pode ser aplicada;
[040] A Figura 16 é um diagrama que ilustra um método de subamostrar uma matriz de quantização à qual a presente invenção pode ser aplicada; e
[041] A Figura 17 é um fluxograma que ilustra esquematicamente um método de decodificação preditiva em coeficientes de matriz de quantização de acordo com uma modalidade da presente invenção.
MODO PARA INVENÇÃO
[042] Nas partes que se seguem, as modalidades da presente invenção serão descritas em detalhes com referência aos desenhos em anexo. Ao descrever as mo-dalidades da presente invenção, uma descrição detalhada de elementos conhecidos relacionados será omitida caso se considere tornar a essência da presente invenção desnecessariamente vago.
[043] Neste relatório descritivo, quando for dito que um elemento é ‘conectado’ ou ‘acoplado’ a outro elemento, isso pode significar que um elemento pode ser direta-mente conectado ou acoplado a outro elemento e um terceiro elemento pode ser ‘conectado’ ou ‘acoplado’ entre os dois elementos. Adicionalmente, neste relatório descritivo, quando for dito que um elemento específico é ‘incluído’, isso pode significar que elementos além do elemento específico não são excluídos e que elementos adicionais podem ser incluídos nas modalidades da presente invenção ou no escopo do espírito técnico da presente invenção.
[044] Termos, como primeiro e segundo, podem ser usados para descrever vários elementos, mas os elementos não são restritos pelos termos. Os termos são usados somente para distinguir um elemento do outro elemento. Por exemplo, um primeiro elemento pode ser nomeado como um segundo elemento sem divergir do escopo da presente invenção. De modo semelhante, um segundo elemento pode ser nomeado com um primeiro elemento.
[045] Adicionalmente, as unidades de elemento descritas nas modalidades da presente invenção são independentemente mostradas a fim de indicar funções diferentes e características, e não significa que cada uma das unidades de elemento é formada por uma parte de hardware separada ou por uma parte de software. Ou seja, as unidades de elemento são dispostas e incluídas, por motivos de conveniência de descrição, e pelo menos duas unidades de elemento formam uma unidade de elemento ou um elemento pode ser dividido em uma pluralidade de unidades de elemento e a pluralidade de unidades de elemento pode realizar funções. Uma modalidade na qual os elementos são integrados ou uma modalidade a partir da qual alguns elementos são separados está incluída no escopo da presente invenção a não ser que divirja da essência da presente invenção.
[046] Adicionalmente, alguns elementos não são elementos essenciais para realizar funções essenciais, mas podem ser elementos opcionais para aperfeiçoar somente o desempenho. A presente invenção pode ser implantada usando somente elementos essenciais para implantar a essência da presente invenção diferentemente dos elementos usados para aperfeiçoar somente o desempenho, e uma estrutura incluindo somente elementos essenciais diferentemente dos elementos opcionais usados para aperfeiçoar somente o desempenho está incluída no escopo da presente invenção.
[047] Primeiramente, a fim de ajudar a conveniência de descrição e compreensão da presente invenção, os termos usados neste relatório descritivo são descritos resumidamente.
[048] Uma unidade significa uma unidade de codificação ou decodificação de imagem. Em outras palavras, quando uma imagem for codificada ou decodificada, uma unidade de codificação ou decodificação se refere a uma unidade dividida de uma imagem quando a imagem for subdividida e codificada ou decodificada. A unidade também pode ser denominada como um bloco, um Macro Bloco (MB), uma Unidade de Codificação (CU), uma Unidade de Predição (PU), uma Unidade de Transformada (TU), um Bloco de Codificação (CB), um Bloco de Predição (PB), ou um Bloco de Transformada (TB). Uma unidade pode ser dividida em subunidades menores.
[049] Um bloco se refere a um arranjo MxN de amostras. M e N têm um valor inteiro positivo. Um bloco pode comumente significar um arranjo de uma forma 2-D.
[050] Uma Unidade de Transformada (TU) é uma unidade básica quando um sinal residual for codificado/decodificado, tal como transformada, transformada inversa, quantização, desquantização, coeficiente de transformada de codifica- ção/decodificação. Uma unidade de transformada pode ser dividida em uma plurali-dade de unidades de transformada menores.
[051] Uma matriz de quantização significa uma matriz usada em um processo de quantização ou desquantização a fim de aperfeiçoar a qualidade de imagem subjetiva ou objetiva de uma imagem. A matriz de quantização também é denominada como uma lista de escalonamento.
[052] Uma matriz padrão pode significar uma matriz de quantização específica que é definida em um codificador/decodificador. A matriz não-padronizada pode significar uma matriz de quantização que não seja definida em um codificador/decodificador, mas é transmitida ou recebida por um usuário.
[053] Um coeficiente de matriz de quantização se refere a cada elemento dentro de uma matriz de quantização, e o coeficiente de matriz de quantização também é denominado como um coeficiente de matriz.
[054] Varredura se refere a um método de dispor a ordem dos coeficientes dentro de um bloco ou matriz. Por exemplo, dispor um arranjo 2-D em uma forma de arranjo 1-D é denominado como varredura, e dispor um arranjo 1-D em uma forma de arranjo 2-D também pode ser denominado como varredura.
[055] Escalonamento se refere a um processo de multiplicar um nível de coeficiente de transformada por um fator. Como resultado, gera-se um coeficiente de transformada. O escalonamento também é denominado como desquantização.
[056] Um coeficiente de transformada se refere a um valor de coeficiente gerado após a transformada ser realizada. Neste relatório descritivo, um nível de coeficiente de transformada quantizado obtido aplicando-se quantização a um coeficiente de transformada também é denominado como um coeficiente de transformada.
[057] Varredura em zigue-zague consiste em um método de varredura específico para dispor sequencialmente coeficientes, correspondentes à maior frequência espacial, a partir de um coeficiente (por exemplo, um coeficiente de matriz de quanti- zação ou um nível de coeficiente de transformada) correspondente à menor frequência espacial.
[058] Um parâmetro de quantização se refere a um valor usado para escalonar um nível de coeficiente de transformada em quantização e desquantização. No presente documento, o parâmetro de quantização pode ser um valor mapeado a um tamanho de etapa de quantização.
[059] Um conjunto de parâmetros corresponde a informações sobre um cabeçalho em uma estrutura dentro de um fluxo de bits. O conjunto de parâmetros tem um significado que designa comumente um conjunto de parâmetros de sequência, um conjunto de parâmetros de imagem, e um conjunto de parâmetros de adaptação.
[060] A Figura 1 é um diagrama de blocos que mostra uma construção de acordo com uma modalidade de um aparelho de codificação de imagens ao qual a presente invenção se aplica.
[061] Referindo-se à Figura 1, o aparelho de codificação de imagens 100 inclui um módulo de predição de movimento 111, um módulo de compensação de movimento 112, um módulo de intrapredição 120, um comutador 115, um subtrator 125, um módulo de transformada 130, um módulo de quantização 140, um módulo de codificação por entropia 150, um módulo de desquantização 160, um módulo de transfor-mada inversa 170, um somador 175, um módulo de filtro 180, e um buffer de imagem de referência 190.
[062] O aparelho de codificação de imagens 100 pode realizar codificação em uma imagem de entrada em modo intra ou modo inter e emitir um fluxo de bits. No caso de modo intra, o comutador 115 pode comutar ao modo intra. No caso de modo inter, o comutador 115 pode comutar ao modo inter. Intrapredição significa predição intra- quadro, e interpredição significa predição interquadro. O aparelho de codificação de imagens 100 pode gerar um bloco de predição para o bloco de entrada da imagem de entrada e, então, decodificar uma diferença entre o bloco de entrada e o bloco de predição. No presente documento, a imagem de entrada pode significar uma imagem original.
[063] No caso de modo intra, o módulo de intrapredição 120 pode gerar o bloco de predição realizando-se uma predição espacial usando um valor do pixel de um bloco previamente codificado vizinho a um bloco atual.
[064] No caso de modo inter, o módulo de predição de movimento 111 pode obter um vetor de movimento buscando-se uma imagem de referência, armazenada no buffer de imagem de referência 190, para uma região que seja mais bem correspondida ao bloco de entrada em um processo de predição de movimento. O módulo de compensação de movimento 112 pode gerar o bloco de predição realizando-se uma compensação de movimento usando o vetor de movimento e a imagem de referência armazenados no buffer de imagem de referência 190. No presente documento, o vetor de movimento é um vetor bidimensional (2-D) usando em interpredição, e o vetor de movimento pode indicar um deslocamento entre uma imagem a ser codifi- cada/decodificada e uma imagem de referência.
[065] O subtrator 125 pode gerar um bloco residual com base na diferença entre o bloco de entrada e o bloco de predição gerado.
[066] O módulo de transformada 130 pode realizar uma transformada no bloco residual e emitir um coeficiente de transformada de acordo com o bloco transformado. Adicionalmente, o módulo de quantização 140 pode emitir um coeficiente quantizado quantizando-se o coeficiente de transformada recebido de acordo com um parâmetro de quantização.
[067] O módulo de codificação por entropia 150 pode realizar uma codificação por entropia em um símbolo de acordo com uma distribuição de probabilidade baseada em valores calculados pelo módulo de quantização 140, um valor de parâmetro de codificação calculado em um processo de codificação, etc. e emitir um fluxo de bits de acordo com os símbolos codificados por entropia. Caso uma codificação por entropia seja aplicada, o tamanho de um fluxo de bits para um símbolo a ser codificado pode ser reduzido porque o símbolo é representado alocando-se um pequeno número de bits a um símbolo tendo uma alta incidência e um grande número de bits a um símbolo tendo uma baixa incidência. De modo correspondente, o desempenho de compactação de codificação de imagem pode ser aperfeiçoado através de codificação por entropia. O módulo de codificação por entropia 150 pode usar esses métodos de codificação como Codificação Aritmética Binária Adaptativa ao Contexto (CABAC) Golomb exponencial, e Codificação Aritmética Binária Adaptativa ao Contexto (CABAC) para codificação por entropia.
[068] O aparelho de codificação de imagens 100 de acordo com a modalidade da Figura 1 realiza uma codificação interpreditiva, ou seja, uma codificação preditiva interquadro, e, logo, uma imagem que foi codificada precisa ser decodificada e ar- mazenada de modo que seja usada como uma imagem de referência. De modo cor-respondente, um coeficiente quantizado é desquantizado pelo módulo de desquanti- zação 160 e transformado inversamente pelo módulo de transformada inversa 170. O coeficiente desquantizado e inversamente transformado é adicionado ao bloco de predição através do somador 175, gerando, assim, um bloco reconstruído.
[069] O bloco reconstruído passa pelo módulo de filtro 180. O módulo de filtro 180 pode aplicar um ou mais entre um filtro de desbloqueio, um Deslocamento Adaptati- vo de Amostra (SAO), e um Filtro de Laço Adaptativo (ALF) ao bloco reconstruído ou à imagem reconstruída. O módulo de filtro 180 também pode ser denominado como um filtro em laço adaptativo. O filtro de desbloqueio pode remover a distorção de bloco gerada no limite dos blocos. O SAO pode adicionar um valor de deslocamento apropriado a um valor de pixel a fim de compensar por um erro de codificação. O ALF pode realizar uma filtragem com base em um valor obtido comparando-se uma imagem reconstruída com a imagem original. O bloco reconstruído que é passado pelo módulo de filtro 180 pode ser armazenado no buffer de imagem de referência 190.
[070] A Figura 2 é um diagrama de blocos que mostra uma construção de acordo com uma modalidade de um aparelho de decodificação de imagens ao qual a presente invenção se aplica.
[071] Referindo-se à Figura 2, o aparelho de decodificação de imagens 200 inclui um módulo de decodificação por entropia 210, um módulo de desquantização 220, um módulo de transformada inversa 230, um módulo de intrapredição 240, um módulo de compensação de movimento 250, um módulo de filtro 260, e um buffer de imagem de referência 270.
[072] O aparelho de decodificação de imagens 200 pode receber um fluxo de bits emitido a partir de um codificador, realizar uma decodificação no fluxo de bits em modo intra ou em modo inter, e emitir uma imagem reconstruída, ou seja, uma ima- gem reconstruída. No caso de um modo intra, um comutador pode comutar ao modo intra. No caso de um modo inter, o comutador pode comutar ao modo inter.
[073] O aparelho de decodificação de imagens 200 pode obter um bloco residual reconstruído a partir do fluxo de bits recebido, gerar um bloco de predição, e gerar um bloco reconstruído, ou seja, um bloco de restauração, adicionando-se o bloco residual reconstruído ao bloco de predição.
[074] O módulo de decodificação por entropia 210 pode gerar símbolos que incluem um símbolo tendo uma forma de coeficiente quantizado realizando-se uma deco- dificação por entropia no fluxo de bits recebido de acordo com uma distribuição de probabilidade.
[075] Se um método de decodificação por entropia for aplicado, o tamanho de um fluxo de bits para cada símbolo pode ser reduzido porque o símbolo é representado alocando-se um pequeno número de bits a um símbolo tendo uma alta incidência e um grande número de bits a um símbolo tendo uma baixa incidência.
[076] O coeficiente quantizado é desquantizado pelo módulo de desquantização 220 e é inversamente transformado pelo módulo de transformada inversa 230. Como resultado da desquantização/transformada inversa do coeficiente quantizado, pode- se gerar um bloco residual reconstruído.
[077] No caso de um modo intra, o módulo de intrapredição 240 pode gerar o bloco de predição realizando-se uma predição espacial usando um valor do pixel de um bloco previamente decodificado adjacente a um bloco atual. No caso de um modo inter, o módulo de compensação de movimento 250 pode gerar o bloco de predição realizando-se uma compensação de movimento usando um vetor de movimento e uma imagem de referência armazenada no buffer de imagem de referência 270.
[078] O bloco residual e o bloco de predição são adicionados juntos por um soma- dor 255. O bloco adicionado passa pelo módulo de filtro 260. O módulo de filtro 260 pode aplicar pelo menos um entre um filtro de desbloqueio, um SAO, e um ALF ao bloco reconstruído ou à imagem reconstruída. O módulo de filtro 260 emite uma imagem reconstruída, ou seja, uma imagem reconstruída. A imagem reconstruída pode ser armazenada no buffer de imagem de referência 270 e pode ser usada para predição interquadro.
[079] A Figura 3 é um diagrama conceitual que mostra esquematicamente uma modalidade na qual uma unidade é particionada em uma pluralidade de subunidades.
[080] As informações de partição de bloco podem incluir informações sobre a pro-fundidade de uma unidade. As informações de profundidade podem indicar o número e/ou o grau de partições da unidade.
[081] Uma unidade pode ser hierarquicamente particionada com informações de profundidade com base em uma estrutura de árvore. Cada uma das subunidades particionadas pode ter informações de profundidade. As informações de profundidade podem incluir informações sobre o tamanho de uma subunidade, porque a unidade indica o número e/ou o grau de partições da unidade.
[082] Referindo-se a 310 da Figura 3, o maior nó pode ser denominado como um nó de raiz, e pode ter o menor valor de profundidade. No presente documento, o maior nó pode ter a profundidade de um nível 0 e representar a primeira unidade que não foi particionada.
[083] Um nó inferior tendo a profundidade de um nível 1 pode indicar uma unidade particionada a partir da primeira unidade uma vez. Um nó inferior tendo a profundidade de um nível 2 pode indicar uma unidade particionada a partir da primeira unidade duas vezes. Por exemplo, em 320 da Figura 3, uma unidade a correspondente a um nó ‘a’ é uma unidade particionada a partir da primeira unidade uma vez, e pode ter a profundidade do nível 1.
[084] Um nó de folha tendo um nível 3 pode incluir uma unidade particionada a partir da primeira unidade três vezes. Por exemplo, em 320 da Figura 3, uma unidade ‘d’ correspondente a um nó ‘d’ é uma unidade particionada a partir da primeira unidade três vezes, e pode ter a profundidade do nível 3. De modo correspondente, o nó de folha tendo o nível 3, ou seja, o menor nó, pode ter a maior profundidade.
[085] Entretanto, a fim de aperfeiçoar a qualidade de imagem subjetiva e objetiva de uma imagem, um codificador usar uma matriz de quantização ao quantizar um coeficiente de transformada usando um valor diferente para cada frequência espacial em um processo de quantização, e um decodificador usa uma matriz de quantiza- ção ao desquantizar um coeficiente de transformada usando um valor diferente para cada frequência espacial em um processo de desquantização.
[086] Nos processos de quantização e desquantização, cada um entre o codificar e o decodificador pode usar uma matriz padrão predeterminada como a matriz de quantização, ou o codificador pode usar uma matriz de quantização definida por um usuário. A matriz de quantização definida por um usuário pode ser denominada como uma matriz não-padrão. No presente documento, o codificador pode codificar a matriz de quantização (isto é, uma matriz não-padrão) em um fluxo de bits e enviar o fluxo de bits ao decodificador.
[087] Descrevem-se, abaixo, um método e um aparelho para varrer coeficientes de matriz de quantização de acordo com a presente invenção.
[088] A Figura 4 é um fluxograma esquematicamente que ilustra um método de codificar uma matriz de quantização de acordo com uma modalidade da presente invenção. O método da Figura 4 pode ser realizado pelo aparelho de codificação de imagens da Figura 1.
[089] Referindo-se à Figura 4, o aparelho de codificação de imagens pode construir uma matriz de quantização na etapa S410. Ou seja, o aparelho de codificação de imagens pode construir uma matriz de quantização a ser usada em um bloco de coeficiente de transformada (ou um bloco de transformada) em um processo de quantização/desquantização.
[090] Por exemplo, uma matriz de quantização necessária para um processo de quantização/desquantização pode ser construída usando uma matriz padrão que é definida em um codificador e em um decodificador. Para outro exemplo, uma matriz de quantização necessária para um processo de quantização/desquantização pode ser construída usando uma matriz não-padrão que foi inserida a um codificador por um usuário.
[091] No presente documento, o aparelho de codificação de imagens pode construir uma matriz de quantização de modo que uma matriz de quantização diferente seja usada dependendo do modo de predição (por exemplo, modo de predição in- traquadro ou modo de predição interquadro) de um bloco de coeficiente de transformada, um componente de cor (por exemplo, um componente luma ou um compo-nente croma), e um tamanho de bloco (por exemplo, 4x4, 8x8, 16x16, 32x32, 16x4, 4x16, 32x8, ou 8x32). A matriz de quantização construída pode incluir várias matrizes de quantização.
[092] Uma matriz de quantização a ser usada em um bloco de coeficiente de transformada tendo um tamanho 16x16 ou 32x32 é usada como uma matriz de quantização tendo um tamanho 16x16 ou 32x32 quando uma quantiza- ção/desquantização for realizada, mas pode ser representada por uma matriz de quantização tendo um tamanho 8x8 e codificada.
[093] Por exemplo, quando um codificador receber uma matriz de quantização tendo um tamanho 16x16 ou 32x32, o codificador pode usar a matriz de quantização tendo um tamanho 16x16 ou 32x32 ao realizar quantização/desquantização, formar a matriz de quantização recebida tendo um tamanho 16x16 ou 32x32 em uma matriz de quantização tendo um tamanho 8x8 através de subamostragem ou amostragem descendente, e codificar a matriz de quantização tendo um tamanho 8x8. Para outro exemplo, quando um codificador receber uma matriz de quantização tendo um tamanho 8x8, o codificador pode formar a matriz de quantização recebida tendo um tamanho 8x8 em uma matriz de quantização tendo um tamanho 16x16 ou 32x32 através de amostragem ascendente ou interpolação ao realizar quantiza- ção/desquantização e pode codificar a matriz de quantização recebida tendo um tamanho 8x8.
[094] A Tabela 1 mostra um exemplo de uma matriz de quantização que pode ser usada dependendo do modo de predição, um componente de cor, e um tamanho de bloco do bloco de coeficiente de transformada descrito anteriormente.
Figure img0001
[095] O aparelho de codificação de imagens pode codificar informações sobre se uma matriz de quantização está ou não presente na etapa S420. Por exemplo, o aparelho de codificação de imagens pode codificar informações indicativas quanto a se uma matriz de quantização está ou não presente em um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[096] A Tabela 2 mostra um exemplo do elemento de sintaxe de um conjunto de parâmetros que é usado para informações codificadas quanto a se uma matriz de quantização está ou não presente.
Figure img0002
[097] Referindo-se à Tabela 2, as informações indicativas quanto a se uma matriz de quantização está ou não presente em um afluxo de bits podem ser codificadas em um conjunto de parâmetros usando um flag. Por exemplo, um flag indicando se uma matriz de quantização está ou não presente pode ser indicado por sca- ling_list_present_flag. Caso uma matriz de quantização não esteja presente, por exemplo, se todas as matrizes de quantização forem determinadas como matrizes padrão, um valor de scaling_list_present_flag pode ser ajustado para 0 e codificado. Caso uma matriz de quantização codificada esteja presente, um valor de sca- ling_list_present_flag pode ser ajustado para 1 e codificado.
[098] Na Tabela 2, um valor de sizeID pode significar o tamanho de um bloco de coeficiente de transformada ou o tamanho de uma matriz de quantização, e um valor de matrixID pode significar o tipo de uma matriz de quantização de acordo com o modo de predição e um componente de cor.
[099] Por exemplo, a Tabela 3 mostra um valor de sizeID de acordo com o tamanho de uma matriz de quantização, e a Tabela 4 mostra um valor de matrixID de acordo com o modo de predição e um componente de cor.
Figure img0003
[0100] Na Tabela 2, utiliza-se scaling_list_present_flag como um flag indicando as informações quanto a se uma matriz de quantização está ou não presente, mas isso consiste somente em um exemplo. O nome do flag pode ser alterado. Por exemplo, sps_scaling_list_data_present_flag pode ser usado para indicar as informações quanto a se uma matriz de quantização está ou não presente em um conjunto de parâmetros de sequência.
[0101] O aparelho de codificação de imagens pode codificar informações sobre um método para prever uma matriz de quantização na etapa S430. Por exemplo, o aparelho de codificação de imagens pode determinar o tipo de um método de prever uma matriz de quantização e codificar as informações sobre o método determinado de prever uma matriz de quantização em um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0102] Referindo-se à Tabela 2, as informações sobre um método para prever uma matriz de quantização podem ser codificadas em um conjunto de parâmetros usando um flag. Por exemplo, um flag indicando um método de prever uma matriz de quanti- zação pode ser indicado por scaling_list_pred_mode_flag. No presente documento, a fim de realizar uma codificação preditiva em coeficientes dentro de uma matriz de quantização, se for determinado que a matriz de quantização é varrida e uma Modulação de Código de Pulso Diferencial (DPCM) e um código de Golomb exponencial são usados, um valor de scaling_list_pred_mode_flag pode ser ajustado para 1 e codificado. Para outro exemplo, se for determinado que uma matriz de quantização de referência e uma matriz de quantização a ser codificada têm o mesmo valor de coeficiente a fim de realizar uma predição entre as matrizes de quantização, um valor de scaling_list_pred_mode_flag pode ser ajustado para 0 e codificado. No presente documento, o significado que a matriz de quantização de referência e a matriz de quantização a ser codificada têm o mesmo valor pode corresponder a um método de predição de matriz de quantização de copiar um valor de coeficiente da matriz de quantização de referência a u um valor de coeficiente da matriz de quantização a ser codificada.
[0103] Na Tabela 2, scaling_list_pred_mode_flag é usado como um flag indicando as informações sobre um método de prever uma matriz de quantização, mas isso consiste somente em um exemplo. O nome do flag pode ser alterado.
[0104] O aparelho de codificação de imagens pode codificar um ID (identificador) de matriz de quantização a fim de realizar uma predição entre as matrizes de quantiza- ção ou realizar uma codificação preditiva em coeficientes dentro da matriz de quanti- zação com base nas informações sobre o método de prever uma matriz de quantiza- ção na etapa S440.
[0105] Por exemplo, se for determinado que a matriz de quantização a ser codificada tem o mesmo valor de coeficiente que a matriz de quantização de referência a fim de realizar uma predição entre as matrizes de quantização de acordo com o método de prever uma matriz de quantização (por exemplo, scaling_list_pred_mode_flag=0), o ID de matriz de quantização de referência da matriz de quantização a ser codificada pode ser codificado em um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0106] Referindo-se à Tabela 2, scaling_list_pred_matrix_id_delta indicando o ID de matriz de quantização de referência de uma matriz de quantização a ser codificada pode ser codificado em um conjunto de parâmetros. No presente documento, um ID de matriz de quantização ‘scaling_list_pred_matrix_id_delta’ pode ser determinado usando matrixID indicativo da matriz de quantização a ser codificada e RefMatrixID indicativo da matriz de quantização de referência. Por exemplo, o ID de matriz de quantização ‘scaling_list_pred_matrix_id_delta’ pode ser determinado conforme na Equação 1. [Equação 1] scaling_list_pred_matrix_id_delta = matrixID - (RefMatrixID + 1)
[0107] O método de determinar a matriz de quantização a ser codificada de modo que tenha o mesmo valor de coeficiente que a matriz de quantização de referência pode ser um método de predição de matriz de quantização de determinar a matriz de quantização de referência indicada por RefMatrixID como a matriz de quantização de referência da matriz de quantização a ser codificada e copiar o valor de coeficiente da matriz de quantização de referência ao valor de coeficiente à matriz de quantiza- ção a ser codificada.
[0108] Para outro exemplo, se for determinado que a matriz de quantização a ser codificada tem o mesmo valor de coeficiente que a matriz de quantização de referência ou uma matriz padrão a fim de realizar uma predição entre as matrizes de quantização de acordo com o método de prever uma matriz de quantização (por exemplo, scaling_list_pred_mode_flag=0), as informações sobre o ID de matriz de quantização de referência da matriz de quantização a ser codificada e se a matriz padrão é ou não usada podem ser codificadas em um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0109] Referindo-se à Tabela 2, se for determinado que a matriz de quantização a ser codificada tem o mesmo valor de coeficiente que a matriz de quantização de referência ou se for determinado que a matriz de quantização a ser codificada tem o mesmo valor de coeficiente que a matriz padrão, scaling_list_pred_matrix_id_delta indicando o ID de matriz de quantização de referência da matriz de quantização a ser codificada pode ser codificado em um conjunto de parâmetros. No presente documento, o ID de matriz de quantização ‘scaling_list_pred_matrix_id_delta’ pode ser determinado usando matrixID indicativo da matriz de quantização a ser codificada e RefMatrixID indicativo da matriz de quantização de referência e da matriz padrão. Por exemplo, o ID de matriz de quantização ‘scaling_list_pred_matrix_id_delta’ pode ser determinado conforme na Equação 2. [Equação 2] scaling_list_pred_matrix_id_delta = matrixID - RefMatrixID
[0110] Se for determinado que a matriz de quantização a ser codificada tem o mesmo valor de coeficiente que a matriz padrão definida em um codificador e em um decodificador, um valor de RefMatrixID pode se tornar idêntico àquele da matrixID e um valor de scaling_list_pred_matrix_id_delta pode ser codificado como 0. No presente documento, a matriz padrão significa uma matriz padrão indicada por sizeID e matrixID.
[0111] Se for determinado que a matriz de quantização a ser codificada tem o mesmo valor de coeficiente que a matriz de quantização de referência, um valor de scaling_list_pred_matrix_id_delta é codificado como um valor diferente de 0 de modo que um valor de RefMatrixID não seja idêntico àquele da matrixID.
[0112] Para ainda outro exemplo, se for determinado que a matriz de quantização é varrida e DPCM e um código de Golomb exponencial são usados (por exemplo, sca- ling_list_pred_mode_flag=1) a fim de realizar uma codificação preditiva em coeficientes dentro da matriz de quantização de acordo com o método de prever a matriz de quantização, um valor de diferença entre um coeficiente de matriz de quantização prévio e um coeficiente de matriz de quantização atual dentro da matriz de quantiza- ção pode ser codificado em um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0113] A Tabela 5 mostra um exemplo do elemento de sintaxe de um conjunto de parâmetros usado para realizar uma codificação preditiva em coeficientes dentro de uma matriz de quantização.
Figure img0004
Figure img0005
[0114] Referindo-se à Tabela 5, o tamanho de uma matriz de quantização a ser codificada é 16x16 (sizeID=2) ou 32x32 (sizeID=3), scaling_list_dc_coef_minus8 indicativo de um valor de coeficiente de matriz DC pode ser codificado em um conjunto de parâmetros. Um valor de scaling_list_dc_coef_minus8 pode ser limitado a um valor entre -7 e 247 que pode ser representado por 8 bits e codificado em um valor entre -7 e 247 usando um código de Golomb exponencial sinalizado.
[0115] Ou, scaling_list_delta_coef indicativo de um valor de diferença entre um coeficiente de matriz de quantização prévio e um coeficiente de matriz de quantização atual dentro de uma matriz de quantização pode ser codificado em um conjunto de parâmetros. Por exemplo, se uma matriz padrão for usada, somente um valor de scaling_list_delta_coef pode ser codificado. Para outro exemplo, se uma matriz de quantização tendo um tamanho 4x4 precisar ser codificada, um total de 16 valores, ou seja, o número de coeficientes dentro da matriz de quantização tendo um tama-nho 4x4, podem ser codificados usando scaling_list_delta_coef. Para ainda outro exemplo, se uma matriz de quantização usada em um bloco de coeficiente de transformada tendo um tamanho 8x8 ou maior precisar ser codificada, um total de 64 valores, ou seja, o número de coeficientes dentro da matriz de quantização tendo um tamanho 8x8, podem ser codificados usando scaling_list_delta_coef. Um método de codificação preditiva em coeficientes dentro de uma matriz de quantização usando um valor de diferença ‘scaling_list_delta_coef’ entre os coeficientes dentro da matriz de quantização será descrito em detalhes mais adiante com referência às Figuras 5 a 13.
[0116] Entretanto, as informações quanto a se uma matriz padrão é ou não usada podem ser codificadas usando scaling_list_delta_coef que é usado para calcular scaling_list_dc_coef_minus8 ou nextCoef. Por exemplo, um valor de sca- ling_list_dc_coef_minus8 pode ser codificado em -8 a fim de informar a um decodifi- cador que uma matriz padrão é usada. Para outro exemplo, um valor de sca- ling_list_delta_coef pode ser codificado de modo que o primeiro valor nextCoef se torne 0 a fim de informar a um decodificador que uma matriz padrão é usada.
[0117] A Figura 5 é um fluxograma esquematicamente que ilustra um método de codificação preditiva em coeficientes de matriz de quantização de acordo com uma modalidade da presente invenção. O método da Figura 5 pode ser realizado pelo aparelho de codificação de imagens da Figura 1. Adicionalmente, o método da Figura 5 pode corresponder ao processo de codificação preditiva em coeficientes de matriz de quantização com base no valor de diferença ‘scaling_list_delta_coef’ entre os coeficientes dentro de uma matriz de quantização na etapa S440 da Figura 4.
[0118] Referindo-se à Figura 5, o aparelho de codificação de imagens varre os coeficientes de matriz de quantização na etapa S510. Ou seja, o aparelho de codificação de imagens realiza uma varredura para dispor os coeficientes dentro de uma matriz de quantização 2-D em um arranjo de coeficientes tendo uma forma 1-D.
[0119] As Figuras 6 a 13 mostram as modalidades de um método de varredura de coeficientes dentro de uma matriz de quantização.
[0120] A Figura 6 é um diagrama que mostra um exemplo de varredura diagonal que pode ser aplicada a uma matriz de quantização tendo um tamanho 4x4 ou 8x8 de acordo com uma modalidade da presente invenção.
[0121] Conforme mostrado na Figura 6, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 4x4 ou 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando varredura diagonal. No presente documento, a direção da varredura diagonal pode ser a partir de uma direção inferior à esquerda até uma direção superior à direita conforme na Figura 6. Ou, a direção da varredura diagonal pode ser a partir de uma direção superior à direita até uma direção inferior à esquerda. Se uma direção de varredura for a partir de uma direção inferior à esquerda até uma direção superior à direita, a mesma pode ser denominada como varredura superior à direita. Ou, se uma direção de varredura for a partir de uma direção superior à direita até uma direção inferior à esquerda, a mesma pode ser denominada como varredura inferior à esquerda. A varredura diagonal mostrada na Figura 6 mostra um exemplo de uma varredura superior à direita.
[0122] A Figura 7 é um diagrama que mostra um exemplo de varredura horizontal que pode ser aplicada a uma matriz de quantização tendo um tamanho 4x4 ou 8x8 de acordo com uma modalidade da presente invenção.
[0123] Conforme mostrado na Figura 7, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 4x4 ou 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando uma varredura horizontal. A varredura horizontal é sequencialmente realizada em cada uma das fileiras dentro da matriz de quantização 2-D a partir da primeira fileira até a última fileira, e os coeficientes dentro de cada fileira podem ser varridos da esquerda para direita.
[0124] A Figura 8 é um diagrama que mostra um exemplo de varredura vertical que pode ser aplicada a uma matriz de quantização tendo um tamanho 4x4 ou 8x8 de acordo com uma modalidade da presente invenção.
[0125] Conforme mostrado na Figura 8, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 4x4 ou 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando uma varredura vertical. A varredura vertical é sequencialmente realizada em cada uma das colunas dentro da matriz de quantização 2-D a partir da primeira coluna até a última coluna, e os coeficientes dentro de cada coluna podem ser varridos de cima para baixo.
[0126] A Figura 9 é um diagrama que mostra um exemplo de varredura diagonal baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção.
[0127] Conforme mostrado na Figura 9, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando uma varredura diagonal com base em um bloco tendo um tamanho 4x4. No presente documento, a varredura diagonal é realizada em coeficientes dentro de cada bloco tendo um tamanho 4x4, e a varredura diagonal também pode ser aplicada a todos os blocos cada um tendo um tamanho 4x4 dentro da matriz de quantização 2-D.
[0128] A direção da varredura diagonal pode ser a partir de uma direção inferior à esquerda até uma direção superior à direita conforme na Figura 9. Ou, a direção da varredura diagonal pode ser a partir de uma direção superior à direita até uma direção inferior à esquerda. A varredura diagonal baseada em bloco mostrada na Figura 9 mostra um exemplo de um método de realizar uma varredura superior à direita com base em um bloco tendo um tamanho 4x4.
[0129] A Figura 10 é um diagrama que mostra um exemplo de varredura horizontal baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção.
[0130] Conforme mostrado na Figura 10, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando uma varredura horizontal com base em um bloco tendo um tamanho 4x4. No presente documento, a varredura horizontal é realizada em coeficientes dentro de cada bloco tendo um tamanho 4x4, e a varredura horizontal também pode ser aplicada a todos os blocos cada um tendo um tamanho 4x4 dentro da matriz de quantização 2-D.
[0131] A Figura 11 é um diagrama que mostra um exemplo de varredura vertical baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção.
[0132] Conforme mostrado na Figura 11, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando uma varredura vertical com base em um bloco tendo um tamanho 4x4. No presente documento, a varredura vertical é realizada em coeficientes dentro de cada bloco tendo um tamanho 4x4, e a varredura vertical também pode ser aplicada a todos os blocos cada um tendo um tamanho 4x4 dentro da matriz de quantização 2-D.
[0133] A Figura 12 é um diagrama que mostra outro exemplo de varredura horizontal baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção.
[0134] Conforme mostrado na Figura 12, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando uma varredura horizontal com base em um bloco tendo um tamanho 8x2. No presente documento, a varredura horizontal é realizada em coeficientes dentro de cada bloco tendo um tamanho 8x2, e a varredura horizontal também pode ser aplicada a todos os blocos cada um tendo um tamanho 8x2 dentro da matriz de quantização 2-D.
[0135] A Figura 13 é um diagrama que mostra outro exemplo de varredura vertical baseada em bloco que pode ser aplicada a uma matriz de quantização tendo um tamanho 8x8 de acordo com uma modalidade da presente invenção.
[0136] Conforme mostrado na Figura 13, os coeficientes dentro de uma matriz de quantização 2-D tendo um tamanho 8x8 podem ser dispostos em um arranjo de coeficientes tendo uma forma 1-D usando uma varredura vertical com base em um bloco tendo um tamanho 2x8. No presente documento, a varredura vertical é realizada em coeficientes dentro de cada bloco tendo um tamanho 2x8, e a varredura vertical também pode ser aplicada a todos os blocos cada um tendo um tamanho 2x8.
[0137] Entretanto, um bloco pode ser um sub-bloco dividido a partir de um tamanho de bloco específico. Se a varredura baseada em bloco descrita anteriormente for usada, os sub-blocos dentro de um tamanho de bloco específico podem ser varridos usando um método de varredura, tais como varredura diagonal, varredura vertical, ou varredura horizontal. Por exemplo, se a varredura diagonal baseada em bloco for usada conforme na Figura 9, um bloco tendo um tamanho 8x8 pode ser dividido em quatro sub-blocos cada um tendo um tamanho 4x4, todos os sub-blocos cada um tendo um tamanho 4x4 podem ser varridos usando varredura diagonal, e os coeficientes dentro de cada sub-bloco tendo um tamanho 4x4 também podem ser varridos usando a varredura diagonal.
[0138] Os métodos de varredura mostrados nas Figuras 6(a) a 13(a) podem ser usados em uma matriz de quantização tendo um tamanho 4x4 para um bloco de coeficiente de transformada 4x4, e os métodos de varredura mostrados nas Figuras 6(b) a 13(b) podem ser usados em uma matriz de quantização tendo um tamanho 8x8 ou maior para blocos de coeficiente de transformada 8x8/16x16/32x32. Os métodos de varredura mostrados nas Figuras 6 a 13 são ilustrados como sendo aplicados a uma matriz de quantização tendo um tamanho máximo 8x8, mas podem ser semelhantemente aplicados a uma matriz de quantização tendo um tamanho maior que um tamanho 8x8. Adicionalmente, os métodos de varredura mostrados nas Figuras 6 a 13 também podem ser aplicados a uma matriz de quantização tendo uma forma não-quadrada além de uma matriz de quantização tendo uma forma quadrada.
[0139] Referindo-se novamente à Figura 5, o aparelho de codificação de imagens gera um valor de diferença (por exemplo, scaling_list_delta_coef) entre os coeficientes de matriz de quantização com base nos coeficientes de matriz de quantização varridos na etapa S520. Ou seja, o aparelho de codificação de imagens gera o valor de diferença (por exemplo, scaling_list_delta_coef) entre um valor de coeficiente de matriz de quantização atual e um coeficiente de matriz de quantização prévio dentro de um arranjo de coeficientes tendo uma forma 1-D usando o método de varredura descrito anteriormente. No presente documento, o valor de diferença pode ser calculado usando DPCM.
[0140] O coeficiente de matriz de quantização atual pode ser o coeficiente de uma matriz de quantização atual a ser codificada no arranjo de coeficientes tendo uma forma 1-D, e o coeficiente de matriz de quantização prévio pode ser um coeficiente localizado em um arranjo logo antes do coeficiente de matriz de quantização atual no arranjo de coeficientes tendo uma forma 1-D. Adicionalmente, um valor de diferença para o primeiro coeficiente de um arranjo de coeficientes tendo uma forma 1-D pode ser gerado usando um valor constante específico devido ao fato de um coeficiente de matriz de quantização prévio a ser previsto não estar presente. O valor constante específico pode ser um valor entre, por exemplo, 1 e 255, particularmente, pode ser 8 ou 16.
[0141] O aparelho de codificação de imagens codifica o valor de diferença (por exemplo, scaling_list_delta_coef) entre um coeficiente de matriz de quantização atual e um coeficiente de matriz de quantização prévio na etapa S530.
[0142] Por exemplo, o aparelho de codificação de imagens pode codificar o valor de diferença (por exemplo, scaling_list_delta_coef) em um código de Golomb exponencial. Se o valor de diferença (por exemplo, scaling_list_delta_coef) tiver informações de sinal, o valor de diferença (por exemplo, scaling_list_delta_coef) pode ser codificado em um código de Golomb exponencial sinalizado. No presente documento, o valor de diferença (por exemplo, scaling_list_delta_coef) pode ser um valor limitado entre -128 e 127 e pode ser codificado no valor entre -128 e 127.
[0143] A Figura 14 é um fluxograma esquematicamente que ilustra um método de decodificar uma matriz de quantização de acordo com uma modalidade da presente invenção. O método da Figura 14 pode ser realizado pelo aparelho de decodificação de imagens da Figura 2.
[0144] Referindo-se à Figura 14, o aparelho de decodificação de imagens pode de- codificar as informações quanto a se uma matriz de quantização está ou não presente na etapa S1410. Por exemplo, o aparelho de decodificação de imagens pode decodificar informações indicativas quanto a se uma matriz de quantização está ou não presente a partir de um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0145] Por exemplo, o aparelho de decodificação de imagens pode decodificar um flag (por exemplo, scaling_list_present_flag mostrado na Tabela 2), indicando se uma matriz de quantização está ou não presente dentro de um fluxo de bits recebido a partir de um codificador, a partir de um conjunto de parâmetros. Se um valor de scaling_list_present_flag for 0, isso indica que uma matriz de quantização não está presente. Se um valor de scaling_list_present_flag for 1, isso indica que uma matriz de quantização codificada está presente. No presente documento, se uma matriz de quantização não estiver presente (isto é, scaling_list_present_flag=0), todas as matrizes de quantização podem ser determinadas como sendo matrizes padrão.
[0146] O aparelho de decodificação de imagens pode decodificar informações sobre um método de prever uma matriz de quantização na etapa S1420. Por exemplo, o aparelho de decodificação de imagens pode decodificar informações sobre um método de prever uma matriz de quantização a partir de um conjunto de parâmetros e determinar o tipo de um método de prever uma matriz de quantização com base nas informações decodificadas. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0147] Por exemplo, o aparelho de decodificação de imagens pode decodificar um flag (por exemplo, scaling_list_pred_mode_flag mostrado na Tabela 2), indicando informações sobre um método de predição de matriz de quantização recebido a partir de um codificador, a partir de um conjunto de parâmetros. Se um valor de sca- ling_list_pred_mode_flag for 1, o aparelho de decodificação de imagens pode decodificar os coeficientes de matriz de quantização usando um código de Golomb expo- nencial, DPCM inverso, ou varredura a fim de prever os coeficientes dentro da matriz de quantização. Se um valor de scaling_list_pred_mode_flag for 0, o aparelho de decodificação de imagens pode determinar o valor de coeficiente de uma matriz de quantização a ser decodificada de modo que a matriz de quantização a ser decodificada tenha o mesmo valor de coeficiente que uma matriz de quantização de referência ou determinar o valor de coeficiente de uma matriz de quantização a ser decodificada de modo que a matriz de quantização a ser decodificada tenha o mesmo valor de coeficiente que um coeficiente de matriz padrão a fim de realizar uma predição entre as matrizes de quantização. No presente documento, o significado que as matrizes de quantização têm o mesmo valor de coeficiente pode corresponder a um método de predição de matriz de quantização para copiar o valor de coeficiente de uma matriz de quantização específica àquela de uma matriz de quantização a ser decodificada.
[0148] O aparelho de decodificação de imagens pode decodificar um ID de matriz de quantização a fim de realizar uma predição entre as matrizes de quantização ou pode realizar uma decodificação preditiva em coeficientes dentro da matriz de quan- tização com base nas informações sobre um método de prever a matriz de quantiza- ção na etapa S1430.
[0149] Por exemplo, se for determinado que uma matriz de quantização a ser decodificada tem o mesmo valor de coeficiente que uma matriz de quantização de referência (por exemplo, scaling_list_pred_mode_flag=0) a fim de realizar uma predição entre as matrizes de quantização de acordo com um método de prever uma matriz de quantização, o ID de matriz de quantização de referência da matriz de quantiza- ção a ser decodificada pode ser decodificado a partir de um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâ-metros de adaptação.
[0150] Conforme no exemplo do elemento de sintaxe da Tabela 2, as informações (por exemplo, scaling_list_pred_matrix_id_delta) indicativas do ID de matriz de quan- tização de referência de uma matriz de quantização a ser decodificada podem ser decodificadas a partir de um conjunto de parâmetros. No presente documento, a matriz de quantização de referência ‘RefMatrixID’ da matriz de quantização a ser decodificada pode ser determinada usando scaling_list_pred_matrix_id_delta indicativo do ID de matriz de quantização de referência e matrixID indicativo da matriz de quantização a ser decodificada. Por exemplo, a matriz de quantização de referência ‘RefMatrixID’ pode ser determinada conforme na Equação 3. [Equação 3] RefMatrixID = matrixID - (1 + scaling_list_pred_matrix_id_delta)
[0151] A matriz de quantização indicada por RefMatrixID que foi determinada usando um método, tal como a Equação 3, pode ser determinada como a matriz de quan- tização de referência da matriz de quantização a ser decodificada, e a matriz de quantização a ser decodificada pode ser ajustada para ter o mesmo valor de coeficiente que a matriz de quantização de referência. O significado que a matriz de quan- tização a ser decodificada é ajustada para ter o mesmo valor de coeficiente que a matriz de quantização de referência pode corresponder a um método de predição de matriz de quantização para copiar o valor de coeficiente da matriz de quantização de referência indicado por RefMatrixID ao valor de coeficiente da matriz de quantização a ser decodificada.
[0152] Para outro exemplo, se for determinado que a matriz de quantização a ser decodificada tem o mesmo valor de coeficiente que uma matriz de quantização de referência ou uma matriz padrão (por exemplo, scaling_list_pred_mode_flag=0) a fim de realizar uma predição entre as matrizes de quantização de acordo com o método de prever uma matriz de quantização, as informações que indicam o ID de matriz de quantização de referência da matriz de quantização a ser decodificada e se a matriz padrão é ou não usada podem ser decodificadas a partir de um conjunto de parâme- tros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0153] Conforme no exemplo do elemento de sintaxe da Tabela 2, as informações (por exemplo, scaling_list_pred_matrix_id_delta) indicando o ID de matriz de quanti- zação de referência de uma matriz de quantização a ser decodificada e se uma matriz padrão é ou não usada podem ser decodificadas a partir de um conjunto de parâmetros. No presente documento, a matriz de quantização de referência ‘RefMatri- xID’ da matriz de quantização a ser decodificada pode ser determinada usando sca- ling_list_pred_matrix_id_delta indicativo do ID de matriz de quantização de referência e matrixID indicativo da matriz de quantização a ser decodificada. Por exemplo, a matriz de quantização de referência ‘RefMatrixID’ pode ser determinada conforme na Equação 4. [Equação 4] RefMatrixID = MatrixID - scaling_list_pred_matrix_id_delta
[0154] Se um valor de RefMatrixID for idêntico a um valor de matrixID, determina-se que uma matriz de quantização a ser decodificada tem o mesmo valor de coeficiente que uma matriz padrão definida em um codificador e em um decodificador. No presente documento, a matriz padrão significa uma matriz padrão indicada por sizeID e matrixID. Adicionalmente, se um valor de scaling_list_pred_matrix_id_delta for 0, isso significa que RefMatrixID tem o mesmo valor que matrixID.
[0155] Se RefMatrixID tiver um valor diferente de matrixID, uma matriz de quantiza- ção indicada por RefMatrixID é determinada como a matriz de quantização de referência de uma matriz de quantização a ser decodificada e a matriz de quantização a ser decodificada é ajustada de modo que tenha o mesmo valor de coeficiente que a matriz de quantização de referência. O significado que a matriz de quantização a ser decodificada é ajustada de modo que tenha o mesmo valor de coeficiente que a matriz de quantização de referência pode corresponder a um método de predição de matriz de quantização para copiar o valor de coeficiente da matriz de quantização de referência indicada por RefMatrixID ao valor de coeficiente da matriz de quantização a ser decodificada.
[0156] Para ainda outro exemplo, se for determinado que um código de Golomb ex-ponencial, DPCM inverso, e varredura são usados (por exemplo, sca- ling_list_pred_mode_flag=1) a fim de realizar uma decodificação preditiva em coeficientes dentro de uma matriz de quantização de acordo com o método de prever uma matriz de quantização, um valor de diferença entre o coeficiente de matriz de quantização prévio e o coeficiente de matriz de quantização atual dentro da matriz de quantização pode ser decodificado a partir de um conjunto de parâmetros. No presente documento, o conjunto de parâmetros pode ser um conjunto de parâmetros de adaptação.
[0157] Conforme no exemplo do elemento de sintaxe da Tabela 5, se o tamanho de uma matriz de quantização a ser decodificada for 16x16 (sizeID=2) ou 32x32 (si- zeID=3), as informações (por exemplo, scaling_list_dc_coef_minus8) indicativas de um valor de coeficiente de matriz DC podem ser decodificadas a partir de um conjunto de parâmetros. Um valor de scaling_list_dc_coef_minus8 pode ser limitado a um valor entre -7 e 247 que pode ser representado por 8 bits e pode ser decodificado como o valor alue entre -7 e 247 usando um código de Golomb exponencial sinalizado. No presente documento, o valor de coeficiente de matriz DC é subsequentemente calculado como um valor de scaling_list_dc_coef_minus8 + 8, e o valor calculado pode ser um valor entre 1 e 255.
[0158] Ou, conforme no exemplo do elemento de sintaxe da Tabela 5, as informações (por exemplo, scaling_list_delta_coef) que indicam um valor de diferença entre um coeficiente de matriz de quantização prévio e um coeficiente de matriz de quanti- zação atual dentro de uma matriz de quantização podem ser decodificadas a partir de um conjunto de parâmetros. Por exemplo, se uma matriz padrão for usada, so- mente um valor de scaling_list_delta_coef pode ser decodificado. Ou, se uma matriz de quantização tendo um tamanho 4x4 precisar ser decodificada, um valor de sca- ling_list_delta_coef pode ser decodificado em um total de 16 valores, ou seja, o número de coeficientes dentro da matriz de quantização tendo um tamanho 4x4. Ou, se uma matriz de quantização usada em um bloco de coeficiente de transformada tendo um tamanho 8x8 ou maior precisar ser decodificada, um valor de sca- ling_list_delta_coef pode ser decodificado em um total de 64 valores, ou seja, o número de coeficientes dentro da matriz de quantização tendo um tamanho 8x8. Um método de decodificação preditiva de coeficientes de matriz de quantização usando o valor de diferença (por exemplo, scaling_list_delta_coef) entre coeficientes dentro de uma matriz de quantização será descrito em detalhes com referência à Figura 17.
[0159] Entretanto, pode-se detectar se uma matriz padrão é ou não usada usando scaling_list_delta_coef usado para calcular scaling_list_dc_coef_minus8 ou nextCoef. Por exemplo, se um valor de scaling_list_dc_coef_minus8 for decodificado em -8, uma matriz de quantização a ser decodificada pode ser determinada como uma matriz padrão. Se o primeiro valor nextCoef obtido decodificando-se um valor de sca- ling_list_delta_coef for 0, uma matriz de quantização a ser decodificada pode ser determinada como uma matriz padrão.
[0160] O aparelho de decodificação de imagens pode reconstruir uma matriz de quantização na etapa S1440. No presente documento, o aparelho de decodificação de imagens pode reconstruir uma matriz de quantização 2-D usando amostragem ascendente, interpolação, substituição de coeficiente de matriz DC, ou subamostra- gem.
[0161] Por exemplo, no caso de uma matriz de quantização usada em um bloco de coeficiente de transformada quadrado tendo um tamanho 4x4, 8x8, 16x16, ou 32x32, uma matriz de quantização 2-D disposta pode ser usada sem alteração quando a quantização/desquantização for realizada, ou uma matriz de quantização 2-D dispos- ta pode ser reconstruída através de amostragem ascendente e usada quando a quantização/desquantização for realizada.
[0162] Uma matriz de quantização 2-D QM tendo um tamanho 4x4 pode ser usada sem alterações como uma matriz de quantização RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 4x4. Isso pode ser expresso conforme na Equação 5. [Equação 5] RQM (x,y) = QM (x,y) com x = 0, 1, ..., 3, y = 0, 1, ..., 3
[0163] Uma matriz de quantização 2-D QM disposta tendo um tamanho 8x8 pode ser usada sem alterações como uma matriz de quantização RQM usada ao des- quantizar um bloco de coeficiente de transformada tendo um tamanho 8x8. Isso pode ser expresso conforme na Equação 6. [Equação 6] RQM (x,y) = QM (x,y) com x = 0, 1, ..., 7, y = 0, 1, ..., 7
[0164] Uma matriz de quantização RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 16x16 pode ser reconstruída em uma matriz de quantização tendo um tamanho 16x16 amostrando-se ascendentemente uma matriz de quantização 2-D QM disposta tendo um tamanho 8x8. No presente documento, um coeficiente de matriz de quantização em um local DC, ou seja, em (0, 0), dentro da matriz de quantização RQM pode ser substituído por um valor de sca- ling_list_dc_coef_minus8 + 8, ou seja, um valor de coeficiente de matriz DC. Isso pode ser expresso conforme na Equação 7. [Equação 7] RQM (x,y) = QM (x/F, y/F) com x = 0, 1, ..., 15, y = 0, 1, ..., 15, F = 2 RQM (0,0) = scaling_list_dc_coef_minus8 + 8
[0165] Uma matriz de quantização RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 32x32 pode ser reconstruída em uma ma- triz de quantização tendo um tamanho 32x32 amostrando-se ascendentemente uma matriz de quantização 2-D QM disposta tendo um tamanho 8x8. No presente documento, um coeficiente de matriz de quantização em um local DC, ou seja, em (0, 0), dentro da matriz de quantização RQM pode ser substituído por um valor de sca- ling_list_dc_coef_minus8 + 8, ou seja, um valor de coeficiente de matriz DC. Isso pode ser expresso conforme na Equação 8. [Equação 8] RQM (x,y) = QM (x/F, y/F) com x = 0, 1, ..., 31, y = 0, 1, ..., 31, F = 4 RQM (0,0) = scaling_list_dc_coef_minus8 + 8
[0166] Um método de amostrar ascendentemente uma matriz de quantização pode ser realizado conforme em um método mostrado na Figura 15. Por exemplo, conforme mostrado na Figura 15, se uma matriz de quantização tendo um tamanho 8x8 for amostrada ascendentemente em uma matriz de quantização tendo um tamanho 16x16, um coeficiente que deve ser amostrado ascendentemente dentro da matriz de quantização tendo um tamanho 16x16 pode ser copiado a partir do coeficiente mais próximo. Se a matriz de quantização tendo um tamanho 8x8 for amostrada ascendentemente em uma matriz de quantização tendo um tamanho 32x32, pode-se usar um método, tal como aquele da Figura 15.
[0167] No presente documento, o método de amostragem ascendente de copiar um coeficiente a partir do coeficiente mais próximo pode ser denominado como o método de interpolação adjacente mais próximo ou um método de interpolação de 0- ésima ordem.
[0168] Para outro exemplo, no caso de uma matriz de quantização usada em um bloco de coeficiente de transformada não-quadrado tendo um tamanho 16x4, 4x16, 32x8, ou 8x32, uma matriz de quantização 2-D disposta pode ser reconstruída através de subamostragem (ou amostragem descendente) e usada ao realizar uma quantização/desquantização.
[0169] Uma matriz de quantização RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 16x4 pode ser reconstruída em uma matriz de quantização tendo um tamanho 16x4 subamostrando-se uma matriz de quan- tização QM tendo um tamanho 16x16.
[0170] No presente documento, um método de subamostragem da matriz de quan- tização QM pode ser realizado de acordo com um método, tal como aquele mostrado na Figura 16. Por exemplo, conforme mostrado na Figura 16 (a), se uma matriz de quantização tendo um tamanho 16x16 for subamostrada em uma matriz de quanti- zação tendo um tamanho 16x4, a matriz de quantização tendo um tamanho 16x4 pode ser derivada realizando-se uma subamostragem em uma matriz de quantiza- ção reconstruída tendo um tamanho 16x16 em relação a um local y, ou seja, uma direção de fileira (isto é, direção vertical).
[0171] Um processo de reconstruir a matriz de quantização tendo um tamanho 16x16 na matriz de quantização tendo um tamanho 16x4 através de subamostragem pode ser expresso conforme na Equação 9. [Equação 9] RQM (x,y) = QM (x, y*F) com x = 0, 1, ..., 15, y = 0, 1, ..., 3, F = 4
[0172] Uma matriz de quantização RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 4x16 pode ser reconstruída em uma matriz de quantização tendo um tamanho 4x16 subamostrando-se uma matriz de quan- tização QM tendo um tamanho 16x16.
[0173] No presente documento, um método de subamostrar a matriz de quantiza- ção QM pode ser realizado de acordo com um método, tal como aquele mostrado na Figura 16. Por exemplo, conforme mostrado na Figura 16(b), se uma matriz de quan- tização tendo um tamanho 16x16 for subamostrada em uma matriz de quantização tendo um tamanho 4x16, uma matriz de quantização tendo um tamanho 4x16 pode ser derivada realizando-se uma subamostragem em uma matriz de quantização re- construída tendo um tamanho 16x16 em relação a um local x, ou seja, uma direção de coluna (isto é, direção horizontal).
[0174] Um processo de reconstruir a matriz de quantização tendo um tamanho 16x16 na matriz de quantização tendo um tamanho 4x16 através de subamostragem pode ser expresso conforme na Equação 10. [Equação 10] RQM (x,y) = QM (x*F, y) com x = 0, 1, ..., 3, y = 0, 1, ..., 15, F = 4
[0175] Uma matriz de quantização RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 32x8 pode ser reconstruída em uma matriz de quantização tendo um tamanho 32x8 subamostrando-se uma matriz de quan- tização QM tendo um tamanho 32x32. No presente documento, conforme em um método, tal como aquele mostrado na Figura 16(a), a matriz de quantização tendo um tamanho 32x8 pode ser derivada subamostrando-se uma matriz de quantização reconstruída tendo um tamanho 32x32 em relação a um local y, ou seja, uma direção de fileira (isto é, direção vertical).
[0176] Um processo de reconstruir a matriz de quantização tendo um tamanho 32x32 na matriz de quantização tendo um tamanho 32x8 através de subamostragem pode ser expresso conforme na Equação 11. [Equação 11] RQM (x,y) = QM (x, y*F) com x = 0, 1, ..., 31, y = 0, 1, ..., 7, F = 4
[0177] Uma matriz de quantização RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 8x32 pode ser reconstruída em uma matriz de quantização tendo um tamanho 8x32 subamostrando-se uma matriz de quan- tização QM tendo um tamanho 32x32. No presente documento, conforme em um método, tal como aquele mostrado na Figura 16(b), a matriz de quantização tendo um tamanho 8x32 pode ser derivada realizando-se uma subamostragem em uma matriz de quantização reconstruída tendo um tamanho 32x32 em relação a um local x, ou seja, uma direção de coluna (isto é, direção horizontal).
[0178] Um processo de reconstruir a matriz de quantização tendo um tamanho 32x32 na matriz de quantização tendo um tamanho 8x32 através de subamostragem pode ser expresso conforme na Equação 12. [Equação 12] RQM (x,y) = QM (x*F, y) com x = 0, 1, ..., 7, y = 0, 1, ..., 31, F = 4
[0179] Entretanto, uma matriz padrão pode ser submetida à amostragem ascendente ou subamostragem e usada ao realizar uma quantização/desquantização. Por exemplo, uma matriz padrão tendo um tamanho 8x8 pode ser reconstruída em uma matriz de quantização tendo um tamanho 16x16 ou 32x32 através de amostragem ascendente.
[0180] Uma matriz padrão RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 16x16 pode ser reconstruída em uma matriz de quantização tendo um tamanho 16x16 amostrando-se ascendentemente uma matriz padrão DQM tendo um tamanho 8x8 usando um método, tal como aquele mostrado na Figura 15. Isso pode ser expresso conforme na Equação 13. [Equação 13] RQM (x,y) = DQM (x/F, y/F) com x = 0, 1, ..., 15, y = 0, 1, ..., 15, F = 2
[0181] Uma matriz padrão RQM usada ao desquantizar um bloco de coeficiente de transformada tendo um tamanho 32x32 pode ser reconstruída em uma matriz de quantização tendo um tamanho 32x32 amostrando-se ascendentemente uma matriz padrão DQM tendo um tamanho 8x8 usando um método, tal como aquele mostrado na Figura 15. Isso pode ser expresso conforme na Equação 14. [Equação 14] RQM (x,y) = DQM (x/F, y/F) com x = 0, 1, ..., 31, y = 0, 1, ..., 31, F = 4
[0182] Se uma matriz padrão tendo um tamanho 8x8 for reconstruída em uma matriz de quantização tendo um tamanho 16x16 ou 32x32 realizando-se uma amostra- gem ascendente na matriz padrão tendo um tamanho 8x8 conforme descrito anteriormente, pode-se reduzir um espaço de memória necessário para armazenar matrizes padrão em um codificador e em um decodificador. Ou seja, o espaço de armazenamento do codificador e do decodificador pode ser reduzido devido ao fato de a matriz padrão tendo um tamanho 8x8 precisar ser armazenada somente na memória ao invés de na matriz padrão tendo um tamanho 16x16 e/ou um tamanho 32x32.
[0183] Na Equação 5 à Equação 14, x pode ser um valor indicativo de x coordenadas de coeficientes dentro de uma matriz de quantização 2-D, e y pode ser um valor indicativo de y coordenadas nos coeficientes dentro da matriz de quantização 2-D.
[0184] A Figura 17 é um fluxograma que ilustra esquematicamente um método de decodificação preditiva de coeficientes de matriz de quantização de acordo com uma modalidade da presente invenção. O método da Figura 17 pode ser realizado pelo aparelho de decodificação de imagens da Figura 2. Adicionalmente, o método da Figura 17 pode corresponder ao processo de decodificação preditiva de coeficientes de matriz de quantização com base no valor de diferença ‘scaling_list_delta_coef’ entre os coeficientes dentro de uma matriz de quantização na etapa S1430 da Figura 14.
[0185] Referindo-se à Figura 17, o aparelho de decodificação de imagens decodifica um valor de diferença (por exemplo, scaling_list_delta_coef) entre os coeficientes de matriz de quantização na etapa S1710.
[0186] Por exemplo, o aparelho de decodificação de imagens pode decodificar o valor de diferença (por exemplo, scaling_list_delta_coef) entre os coeficientes de matriz de quantização usando um código de Golomb exponencial.
[0187] O valor de diferença (por exemplo, scaling_list_delta_coef) pode ser um valor limitado entre -128 e 127. No presente documento, o valor de diferença (por exemplo, scaling_list_delta_coef) pode ser decodificado no valor entre -128 e 127 usando um código de Golomb exponencial sinalizado pelo fato de ter informações de sinal.
[0188] O aparelho de decodificação de imagens gera um coeficiente de matriz de quantização com base no valor de diferença decodificado (por exemplo, sca- ling_list_delta_coef) na etapa S1720.
[0189] O valor de diferença decodificado (por exemplo, scaling_list_delta_coef) pode ser armazenado em um arranjo de coeficientes tendo uma forma 1-D ou uma matriz tendo uma forma 2-D na ordem de decodificação. De modo correspondente, o aparelho de decodificação de imagens pode adicionar o valor de diferença decodificado (por exemplo, scaling_list_delta_coef) entre um coeficiente de matriz de quanti- zação atual e um coeficiente de matriz de quantização prévio dentro do arranjo de coeficientes tendo uma forma 1-D ou a matriz tendo uma forma 2-D e reconstruir um coeficiente de matriz de quantização usando o valor adicionado. No presente documento, o coeficiente de matriz de quantização reconstruído pode ser calculado usando DPCM inverso.
[0190] O coeficiente de matriz de quantização atual pode ser um valor de coeficiente de uma matriz de quantização atual a ser decodificada dentro de um arranjo de quantização tendo uma forma 1-D ou uma matriz 2-D que será decodificada, e o coeficiente de matriz de quantização prévio pode ser um coeficiente localizado logo antes de um arranjo ou ordem de matriz do coeficiente de matriz de quantização atual dentro do arranjo de quantização tendo uma forma 1-D ou a matriz 2-D que será decodificada.
[0191] Adicionalmente, o primeiro coeficiente de uma matriz de quantização pode ser reconstruído usando um valor constante específico devido ao fato de um coeficiente de matriz de quantização prévio a ser predito não estar presente. O valor constante específico pode ser um valor entre, por exemplo, 1 e 255, particularmente, pode ser 8 ou 16. De modo correspondente, o coeficiente de matriz de quantização reconstruído pode ter o valor entre 1 e 255.
[0192] Por exemplo, conforme na Tabela 5, o aparelho de decodificação de imagens pode adicionar um valor de diferença decodificado (por exemplo, sca- ling_list_delta_coef) e um coeficiente de matriz de quantização prévio e decodificar nextCoef ou scalingList[i], ou seja, um coeficiente de matriz de quantização atual usando o valor adicionado. No presente documento, ‘i’ pode ser um valor de índice que indica um local (ou ordem) dentro de um arranjo de quantização tendo uma forma 1-D.
[0193] O aparelho de decodificação de imagens varre os coeficientes de matriz de quantização reconstruídos e dispõe os coeficientes de matriz de quantização varridos em uma matriz de quantização na etapa S1730.
[0194] Por exemplo, o aparelho de decodificação de imagens pode varrer os coefi-cientes de matriz de quantização reconstruídos usando varredura diagonal, varredura horizontal, varredura vertical, varredura diagonal baseada em bloco, varredura horizontal baseada em bloco, e varredura vertical baseada em bloco, tais como aquelas mostradas nas Figuras 6 a 13. O método de varredura foi descrito acima com referência às Figuras 6 a 13, e, logo, uma descrição detalhada desses será omitida. No presente documento, o aparelho de decodificação de imagens pode varrer os coeficientes de matriz de quantização reconstruídos em ordem inversa à varredura da matriz de quantização de um aparelho de codificação de imagens e dispor os coeficientes de matriz de quantização varridos em uma matriz de quantização 2-D. No presente documento, os coeficientes de matriz de quantização reconstruídos podem ser dispostos na matriz de quantização 2-D no estado no qual um arranjo 1-D está presente.
[0195] Por exemplo, o aparelho de decodificação de imagens pode varrer os coefi-cientes de matriz de quantização usando um método de varredura sinalizado por um aparelho de codificação de imagens. No presente documento, o aparelho de codificação de imagens pode varrer os coeficientes de matriz de quantização usando um dos métodos de varredura, tais como aqueles mostrados nas Figuras 6 a 13, e sinalizar informações sobre os coeficientes de matriz de quantização varridos. Em outra modalidade, o aparelho de decodificação de imagens pode determinar um método de varrer coeficientes de matriz de quantização de acordo com condições específicas.
[0196] Entretanto, no processo de decodificar uma matriz de quantização de acordo com uma modalidade da presente invenção, pode-se evitar um processo de inicialização para varredura em zigue-zague.
[0197] Por exemplo, se o método de varredura diagonal baseada em bloco de acordo com uma modalidade da presente invenção for aplicado a uma matriz padrão tendo um tamanho 8x8 que seja definido em um codificador e em um decodificador que pode ser usado em um bloco de coeficiente de transformada tendo um tamanho 8x8, 16x16, ou 32x32, os coeficientes de matriz de quantização podem ser rearran- jados de acordo com os índices de arranjo, tais como aqueles mostrados na Tabela 6. A Tabela 6 mostra os valores de coeficiente de uma matriz padrão tendo um tamanho 8x8 de acordo com o tamanho de um bloco de coeficiente de transformada, modo de predição, e um componente de cor.
Figure img0006
Figure img0007
[0198] Referindo-se à Tabela 6, ‘i’ indica a ordem de varredura, Scalin- gList[sizeID][matrixID][i] indica sizeID, matrixID, e um coeficiente de matriz padrão indicado por ‘i’. sizeID pode ser um valor indicativo do tamanho de um bloco de coe-ficiente de transformada ou tamanho de uma matriz de quantização conforme na Tabela 3, e matrixID pode ser um valor indicativo de um ID de matriz de quantização de acordo com o modo de predição e com um componente de cor conforme na Tabela 4.
[0199] Se a varredura diagonal baseada em bloco de acordo com uma modalidade da presente invenção for aplicada nas partes que se seguem, descrever-se-á abaixo um método de reconstruir uma matriz de quantização tendo um tamanho 4x4, 8x8, 16x16, ou 32x32 usando ScalingList[sizeID][matrixID][i]. No presente documento, a matriz de quantização reconstruída pode ser representada por ScalingFac- tor[sizeID][MatrixID][x][y], e a matriz de quantização reconstruída pode significar um arranjo de ScalingFactor de acordo com sizeID e MatrixID.
[0200] O elemento ‘ScalingFactor [0][MatrixID] [0][]’ de uma matriz de quantização tendo um tamanho 4x4 pode ser derivado conforme na Equação 15. [Equação 15] ScalingFactor [0][MatrixID] [0][y*4+x] = ScalingList [0][MatrixID][i] com i = 0..15 e MatrixID = 0..5
[0201] Na Equação 15, x=DiagScan[i] [0] e y=DiagScan[i][1]. No presente documento, DiagScan[][] pode ser um método de varredura diagonal, tal como aquele mostrado na Figura 9(a), e pode ser um arranjo gerado inserindo-se 4 como um valor de uma largura de bloco ‘blkWidth’ e 8 como um valor de uma altura de bloco ‘blkHeight’ a um processo de inicialização de arranjo de varredura diagonal superior direita.
[0202] O elemento ‘ScalingFactor[1][MatrixID] [0][]’ de uma matriz de quantização tendo um tamanho 8x8 pode ser derivado conforme na Equação 16. [Equação 16] ScalingFactor[1][MatrixID] [0][y*8+x] = ScalingList[1][MatrixID][i] com i = 0..63 e MatrixID = 0..5
[0203] Na Equação 16, x=DiagScan[i] [0] e y=DiagScan[i][1]. No presente documento, DiagScan[][] pode ser um método de varredura diagonal baseada em bloco, tal como aquele mostrado na Figura 9(b), e pode ser um arranjo gerado inserindo-se 8 como um valor de uma largura de bloco ‘blkWidth’ e 8 como um valor de uma altura de bloco ‘blkHeight’ a um processo de inicialização de arranjo de varredura diagonal superior direita.
[0204] O elemento ‘ScalingFactor[2][MatrixID] [0][]’ de uma matriz de quantização tendo um tamanho 16x16 pode ser derivado conforme na Equação 17. Adicionalmente, o elemento da matriz de quantização tendo um tamanho 16x16 que está localizado em (0,0) dentro da matriz de quantização pode ser derivado conforme na Equação 18. [Equação 17] ScalingFactor[2][MatrixID] [0][(y*2+j)*16+(x*2+k)] = ScalingList[2][MatrixID][i] com i = 0..63, j = 0..1, k = 0..1 e MatrixID = 0..5
[0205] Na Equação 17, x=DiagScan[i] [0] e y=DiagScan[i][1]. No presente documento, DiagScan[][] pode ser um método de varredura diagonal baseada em bloco, tal como aquele mostrado na Figura 9(b) e pode ser um arranjo gerado inserindo-se 8 como um valor de uma largura de bloco ‘blkWidth’ e 8 como um valor de uma altura de bloco ‘blkHeight’ a um processo de inicialização de arranjo de varredura diagonal superior direita. [Equação 18] ScalingFactor[2][MatrixID] [0] [0] = scaling_list_dc_coef_minus8 [0][MatrixID] + 8 com MatrixID = 0..5
[0206] O elemento ScalingFactor[3][MatrixID] [0][] de uma matriz de quantização tendo um tamanho 32x32 pode ser derivado conforme na Equação 19. Adicionalmente, o elemento da matriz de quantização localizada em (0,0) dentro da matriz de quantização tendo um tamanho 32x32 pode ser derivado conforme na Equação 20. [Equação 19] ScalingFactor[3][MatrixID] [0][(y*4+j)*32+(x*4+k)] = ScalingList[3][MatrixID][i] com i = 0..63, j = 0..3, k = 0..3 e MatrixID = 0..1
[0207] Na Equação 19, x=DiagScan[i] [0] e y=DiagScan[i][1]. No presente documento, DiagScan[][] pode ser um método de varredura diagonal baseada em bloco, tal como aquele mostrado na Figura 9(b), e sPos, ou seja, um índice de arranjo no lado superior direito, pode ser um arranjo gerado inserindo-se 8 como um valor de uma largura de bloco ‘blkWidth’ e 8 como uma altura de bloco ‘blkHeight’ a um processo de inicialização de arranjo de varredura diagonal superior direita. [Equação 20] ScalingFactor[3][MatrixID] [0] [0] = scaling_list_dc_coef_minus8 [0][MatrixID] + 8 com MatrixID = 0..1
[0208] O processo de inicialização de arranjo de varredura diagonal superior direita descrito anteriormente pode ser realizado da seguinte forma.
[0209] No presente documento, a largura de bloco ‘blkWidth’ e a altura de bloco ‘blkHeight’ podem ser as entradas, e um arranjo ‘DiagScan[sPos][sComp]’ pode ser a saída. O índice de arranjo ‘sPos’ pode ser um valor entre 0 e ‘(blkWidthSize * blkHeightSize) - 1’, e indica um local de varredura. Por exemplo, se um índice de arranjo ‘sComp’ for 0, o mesmo indica um componente horizontal e se um índice de arranjo ‘sComp’ for 1, o mesmo indica um componente vertical. O arranjo ‘DiagS- can[sPos][sComp]’ pode ser derivado da seguinte forma dependendo da largura de bloco ‘blkWidth’ e da altura de bloco ‘blkHeight’.
[0210] Caso a largura de bloco ‘blkWidth’ seja menor que 8 e a altura de bloco ‘blkHeight’ for menor que 8, o processo de inicialização de arranjo de varredura diagonal superior direita realizado conforme na Tabela 7 e o arranjo ‘DiagS- can[sPos][sComp]’ pode ser derivado. Caso contrário (por exemplo, a largura de bloco ‘blkWidth’ seja maior que 4 e a altura de bloco ‘blkHeight’ seja maior que 4), o processo de inicialização de arranjo de varredura diagonal superior direita pode ser realizado conforme na Tabela 8 e o arranjo ‘DiagScan[sPos][sComp]’ pode ser derivado.
Figure img0008
Figure img0009
[0211] Descreve-se um método de reconstruir uma matriz de quantização tendo um tamanho 4x4, 8x8, 16x16, ou 32x32 quando o método de varredura diagonal baseada em bloco de acordo com uma modalidade da presente invenção for aplicado, mas a presente invenção não se limita ao método de varredura diagonal baseada em bloco. Por exemplo, a matriz de quantização tendo um tamanho 4x4, 8x8, 16x16, ou 32x32 pode ser reconstruída usando varredura diagonal, varredura horizontal, varredura vertical, varredura diagonal baseada em bloco, varredura horizontal baseada em bloco, e varredura vertical baseada em bloco, tais como aquelas mostradas nas Figuras 6 a 13. Adicionalmente, uma matriz de quantização reconstruída usando esse método é usada quando a quantização/desquantização for realizada em um codificador e usada quando a desquantização for realizada em um decodificador.
[0212] De acordo com as modalidades supramencionadas, gera-se um nível de co-eficiente de transformada usando uma matriz de quantização em um coeficiente de transformada quando a quantização for realizada em um codificador, e um coeficiente de transformada é gerado usando uma matriz de quantização em um nível de coeficiente de transformada quando a desquantização for realizada em um decodificador. No entanto, na presente invenção tanto o coeficiente de transformada como o nível de coeficiente de transformada foram comumente designados como um coeficiente de transformada.
[0213] Nas modalidades supramencionadas, embora os métodos tenham sido descritos com base nos fluxogramas sob a forma de uma série de etapas ou blocos, a presente invenção não se limita à sequência das etapas, e algumas das etapas podem ser realizadas em uma ordem diferente daquela das outras etapas ou pode ser realizada simultaneamente a outras etapas. Adicionalmente, os indivíduos versados na técnica compreenderão que as etapas mostradas no fluxograma não são exclusivas e as etapas podem incluir etapas adicionais ou aquelas que uma ou mais etapas no fluxograma podem ser excluídas sem afetar o escopo da presente invenção. Muito embora algumas modalidades exemplificadoras da presente invenção tenham sido descritas com referência aos desenhos em anexo, os indivíduos versados na técnica podem alterar e modificar a presente invenção de várias formas sem divergir da característica essencial da presente invenção. De modo correspondente, as modalidades reveladas não devem ser construídas como limitantes ao espírito técnico da presente invenção, mas devem ser construídas ilustrando o espírito técnico da presente invenção. O escopo da presente invenção não se restringe pelas modalidades, e o escopo da presente invenção deve ser interpretado com base nas reivindicações em anexo a seguir. De modo correspondente, a presente invenção deve ser construída abrangendo todas as modificações ou variações derivadas a partir do significado e escopo das reivindicações em anexo e seus equivalentes.

Claims (5)

1. Método para decodificar vídeo, CARACTERIZADO pelo fato de que com-preende: decodificar informações sobre uma matriz de quantização; reconstruir a matriz de quantização com base nas informações sobre a matriz de quantização; gerar um bloco residual para um bloco atual com base na matriz de quanti- zação reconstruída, gerar um bloco de predição para o bloco atual de acordo com um modo de predição; e reconstruir o bloco atual com base no bloco residual gerado e no bloco de predição gerado, em que as informações sobre a matriz de quantização incluem pelo menos uma dentre informações que indicam um método de predição da matriz de quantiza- ção, informações sobre um identificador de matriz de quantização de referência da matriz de quantização, informações que representam um valor DC da matriz de quantização, e informações que representam um valor de diferença entre coeficientes de matriz de quantização, em que a reconstrução da matriz de quantização inclui: derivar um coeficiente de matriz de quantização utilizando as informações que representam um valor de diferença entre os coeficientes de matriz de quantiza- ção, e dispor os coeficientes de matriz de quantização na matriz de quantização por varredura diagonal superior à direita nos coeficientes de matriz de quantização, em que a varredura diagonal superior à direita dispõe os coeficientes de matriz de quantização ao longo de todas as linhas diagonais superiores à direita na matriz de quantização, uma por uma, na direção a partir do topo à esquerda para o fun- do à direita, e iniciando a partir de uma posição inferior à esquerda para uma posição superior à direita para cada linha diagonal superior à direita, e em que a matriz de quantização é reconstruída de modo que uma matriz de quantização diferente é utilizada dependendo do modo de predição.
2. Método para decodificar vídeo, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações que representam o valor DC da matriz de quantização são decodificadas como um valor de -7 a 247.
3. Método para decodificar vídeo, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que: as informações que representam um valor de diferença entre os coeficientes de matriz de quantização são um valor de diferença entre um coeficiente de matriz de quantização atual e um coeficiente de matriz de quantização prévio decodificado antes do coeficiente de matriz de quantização atual, e o coeficiente de matriz de quantização é derivado pela adição do coeficiente de matriz de quantização prévio ao valor de diferença entre os coeficientes de matriz de quantização para o coeficiente de matriz de quantização atual.
4. Método para decodificar vídeo, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que: quando a matriz de quantização é usada em um bloco de coeficiente de transformada de tamanho 4x4, uma varredura diagonal superior à direita de tamanho 4x4 é realizada nos coeficientes de matriz de quantização, e quando a matriz de quantização é usada em um bloco de coeficiente de transformada tendo um dentre tamanho 8x8, tamanho 16x16, e tamanho 32x32, uma varredura diagonal superior à direita de tamanho 8x8 é realizada nos coeficientes de matriz de quantização.
5. Mídia de gravação não transitória legível por computador CARACTERIZADA pelo fato de que armazena um fluxo de bits a ser decodificado por um método para decodificar vídeo conforme definido na reivindicação 1.
BR122021002351-4A 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo BR122021002351B1 (pt)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
KR10-2012-0039270 2012-04-16
KR20120039270 2012-04-16
PCT/KR2013/003203 WO2013157825A1 (ko) 2012-04-16 2013-04-16 영상 부호화/복호화 방법 및 장치
KR10-2013-0041807 2013-04-16
KR1020130041807A KR101527445B1 (ko) 2012-04-16 2013-04-16 영상 부호화/복호화 방법 및 장치

Publications (1)

Publication Number Publication Date
BR122021002351B1 true BR122021002351B1 (pt) 2023-03-14

Family

ID=49635805

Family Applications (5)

Application Number Title Priority Date Filing Date
BR122021010845-5A BR122021010845B1 (pt) 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo
BR112014022670-9A BR112014022670B1 (pt) 2012-04-16 2013-04-16 Método e mídia legível por computador para decodificar vídeo
BR122020023544-6A BR122020023544B1 (pt) 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo
BR122021002351-4A BR122021002351B1 (pt) 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo
BR122021005953-5A BR122021005953B1 (pt) 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo

Family Applications Before (3)

Application Number Title Priority Date Filing Date
BR122021010845-5A BR122021010845B1 (pt) 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo
BR112014022670-9A BR112014022670B1 (pt) 2012-04-16 2013-04-16 Método e mídia legível por computador para decodificar vídeo
BR122020023544-6A BR122020023544B1 (pt) 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo

Family Applications After (1)

Application Number Title Priority Date Filing Date
BR122021005953-5A BR122021005953B1 (pt) 2012-04-16 2013-04-16 Método e mídia de gravação não transitória legível por computador para decodificar vídeo

Country Status (10)

Country Link
US (9) US9571841B2 (pt)
EP (7) EP3343920B1 (pt)
JP (1) JP6140269B2 (pt)
KR (14) KR101527445B1 (pt)
CN (6) CN111147852B (pt)
BR (5) BR122021010845B1 (pt)
ES (3) ES2664693T3 (pt)
PL (4) PL3346708T3 (pt)
PT (1) PT2840791T (pt)
WO (1) WO2013157825A1 (pt)

Families Citing this family (23)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6120490B2 (ja) * 2011-11-07 2017-04-26 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
US10277915B2 (en) * 2011-11-07 2019-04-30 Qualcomm Incorporated Signaling quantization matrices for video coding
JP6312879B2 (ja) * 2011-11-07 2018-04-18 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム
JP2015002462A (ja) * 2013-06-17 2015-01-05 ソニー株式会社 画像圧縮回路、画像圧縮方法、および伝送システム
WO2016044842A1 (en) * 2014-09-19 2016-03-24 Futurewei Technologies, Inc. Method and apparatus for non-uniform mapping for quantization matrix coefficients between different sizes of matrices
TWI561060B (en) * 2015-01-15 2016-12-01 Mstar Semiconductor Inc Signal processing apparatus and signal processing method including quantization or inverse-quantization process
US9780891B2 (en) * 2016-03-03 2017-10-03 Electronics And Telecommunications Research Institute Method and device for calibrating IQ imbalance and DC offset of RF tranceiver
CN116233461A (zh) * 2018-03-30 2023-06-06 松下电器(美国)知识产权公司 编码方法、解码方法以及存储介质
WO2020003740A1 (ja) * 2018-06-29 2020-01-02 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
WO2020084929A1 (ja) * 2018-10-23 2020-04-30 日本電気株式会社 映像符号化又は復号装置、映像符号化又は復号方法、プログラム、及び記録媒体
JP2020098984A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置及び画像復号装置及びそれらの制御方法及びプログラム
JP2020098983A (ja) * 2018-12-17 2020-06-25 キヤノン株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法
EP3917142A4 (en) * 2018-12-26 2022-11-09 Electronics and Telecommunications Research Institute METHOD AND DEVICE FOR ENCODING/DECODING QUANTIFICATION MATRIX AND RECORDING MEDIUM WITH BITSTREAM STORED THEREON
US11570439B2 (en) * 2019-05-15 2023-01-31 Hyundai Motor Company Inverse quantization device and method used in video decoding device
CN113841403A (zh) * 2019-05-15 2021-12-24 现代自动车株式会社 影像解码装置中使用的逆量化装置和方法
CN113455006B (zh) * 2019-06-18 2024-01-16 Lg 电子株式会社 图像解码方法和装置
US12003727B2 (en) * 2019-06-28 2024-06-04 Lg Electronics Inc. Image decoding method using chroma quantization parameter table, and device therefor
EP4014490A1 (en) * 2019-08-14 2022-06-22 InterDigital VC Holdings France, SAS Quantization matrix prediction for video encoding and decoding
CN117336482A (zh) * 2019-08-20 2024-01-02 北京字节跳动网络技术有限公司 变换跳过模式的信令通知
WO2021060846A1 (ko) * 2019-09-23 2021-04-01 엘지전자 주식회사 양자화 매트릭스를 이용한 영상 부호화/복호화 방법, 장치 및 비트스트림을 전송하는 방법
US11575896B2 (en) * 2019-12-16 2023-02-07 Panasonic Intellectual Property Corporation Of America Encoder, decoder, encoding method, and decoding method
US11451779B2 (en) * 2020-03-05 2022-09-20 Qualcomm Incorporated Scaling list signalling for video coding
WO2023009608A1 (en) * 2021-07-27 2023-02-02 Beijing Dajia Internet Information Technology Co., Ltd. Coding enhancement in cross-component sample adaptive offset

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3855286B2 (ja) 1995-10-26 2006-12-06 ソニー株式会社 画像符号化装置および画像符号化方法、画像復号化装置および画像復号化方法、並びに記録媒体
KR100210384B1 (ko) 1996-05-14 1999-07-15 전주범 양자화기
US6999511B1 (en) 1999-02-23 2006-02-14 International Business Machines Corporation Dynamically switching quant matrix tables within an MPEG-2 encoder
KR100584552B1 (ko) * 2003-01-14 2006-05-30 삼성전자주식회사 동영상 부호화 및 복호화 방법과 그 장치
US7738554B2 (en) 2003-07-18 2010-06-15 Microsoft Corporation DC coefficient signaling at small quantization step sizes
KR101082233B1 (ko) 2004-01-20 2011-11-09 파나소닉 주식회사 화상 부호화 방법, 화상 복호화 방법, 화상 부호화 장치,화상 복호화 장치 및 그 프로그램
US7933327B2 (en) * 2004-01-30 2011-04-26 Panasonic Corporation Moving picture coding method and moving picture decoding method
EP1675402A1 (en) * 2004-12-22 2006-06-28 Thomson Licensing Optimisation of a quantisation matrix for image and video coding
JP4146444B2 (ja) 2005-03-16 2008-09-10 株式会社東芝 動画像符号化の方法及び装置
KR100677616B1 (ko) * 2005-09-28 2007-02-02 삼성전자주식회사 동영상 부호화 및 복호화 방법과 그 장치
CN101083769B (zh) 2006-06-02 2011-05-25 三星电子株式会社 处理n比特视频数据的编/解码器和编/解码方法
CN100551072C (zh) * 2006-06-05 2009-10-14 华为技术有限公司 一种编码中量化矩阵选择方法、装置及编解码方法及系统
JP2008003520A (ja) 2006-06-26 2008-01-10 Toshiba Corp フォトマスク及び半導体装置の製造方法
KR100694166B1 (ko) * 2006-11-28 2007-03-12 삼성전자주식회사 동영상 부호화 방법과 그 장치
JP4569840B2 (ja) 2007-09-12 2010-10-27 ソニー株式会社 画像符号化装置、画像符号化方法
CN101453643B (zh) * 2007-12-04 2011-05-18 华为技术有限公司 量化模式、图像编码、解码方法、编码器、解码器及系统
KR100992675B1 (ko) * 2007-12-21 2010-11-05 한국전자통신연구원 오디오 부호화 및 복호화 방법과 그 장치
BRPI1015982A2 (pt) * 2009-06-19 2016-04-19 Mitsubishi Eletric Corp dispositivos e métodos de codificação de imagem e de decodificação de imagem.
WO2011016248A1 (ja) * 2009-08-06 2011-02-10 パナソニック株式会社 符号化方法、復号方法、符号化装置及び復号装置
RU2012116555A (ru) * 2009-10-30 2013-12-10 Панасоник Корпорэйшн Способ декодирования изображений, способ кодирования изображений, аппаратура декодирования изображений, аппаратура кодирования изображений, программа и интегральная схема
KR101024282B1 (ko) 2009-10-30 2011-03-29 중앙대학교 산학협력단 압축 영역에서의 영상 복원 장치 및 방법
KR20110065092A (ko) * 2009-12-09 2011-06-15 삼성전자주식회사 회전 변환을 이용한 영상 부호화, 복호화 방법 및 장치
CN105245895B (zh) 2010-06-04 2019-02-26 索尼公司 图像处理设备和方法
EP2405656B1 (en) 2010-07-06 2015-09-02 BlackBerry Limited Methods and devices for data compression using adaptive reconstruction levels
US9167252B2 (en) * 2010-12-01 2015-10-20 Texas Instruments Incorporated Quantization matrix compression in video coding
US8953690B2 (en) * 2011-02-16 2015-02-10 Google Technology Holdings LLC Method and system for processing video data
JP6120490B2 (ja) 2011-11-07 2017-04-26 キヤノン株式会社 画像符号化装置、画像符号化方法及びプログラム、画像復号装置、画像復号方法及びプログラム

Also Published As

Publication number Publication date
KR101726680B1 (ko) 2017-04-13
PL3346705T3 (pl) 2021-04-06
CN111064966A (zh) 2020-04-24
KR102152975B1 (ko) 2020-09-07
US20180324431A1 (en) 2018-11-08
US10455234B2 (en) 2019-10-22
KR20180068919A (ko) 2018-06-22
EP3343920B1 (en) 2019-06-26
CN111147852B (zh) 2022-05-31
CN111147851B (zh) 2022-09-13
KR20130116845A (ko) 2013-10-24
KR20130116843A (ko) 2013-10-24
KR101691978B1 (ko) 2017-01-02
EP3346705B1 (en) 2020-10-28
KR101952182B1 (ko) 2019-02-26
US20180324430A1 (en) 2018-11-08
KR101710994B1 (ko) 2017-02-28
US10924742B2 (en) 2021-02-16
CN111147852A (zh) 2020-05-12
PL3346708T3 (pl) 2021-03-08
KR101868122B1 (ko) 2018-06-18
CN111131838B (zh) 2022-05-31
US10448018B2 (en) 2019-10-15
CN111147851A (zh) 2020-05-12
EP3346708B1 (en) 2020-11-25
US20180324433A1 (en) 2018-11-08
CN111131820A (zh) 2020-05-08
US20180324432A1 (en) 2018-11-08
EP3787292A1 (en) 2021-03-03
KR20180068921A (ko) 2018-06-22
KR102349176B1 (ko) 2022-01-10
CN104488273A (zh) 2015-04-01
KR20130116844A (ko) 2013-10-24
PL3346707T3 (pl) 2021-05-04
US10477213B2 (en) 2019-11-12
US20170041610A1 (en) 2017-02-09
ES2743227T3 (es) 2020-02-18
CN111131838A (zh) 2020-05-08
KR20230141670A (ko) 2023-10-10
ES2664693T3 (es) 2018-04-23
KR20200105787A (ko) 2020-09-09
JP2015516754A (ja) 2015-06-11
KR101952184B1 (ko) 2019-02-26
KR102583640B1 (ko) 2023-09-27
KR20180068918A (ko) 2018-06-22
BR112014022670A2 (pt) 2017-06-20
US20180324429A1 (en) 2018-11-08
KR20170042526A (ko) 2017-04-19
BR122020023544B1 (pt) 2023-03-14
US20200045315A1 (en) 2020-02-06
US10455233B2 (en) 2019-10-22
KR102462009B1 (ko) 2022-11-03
EP3346706B1 (en) 2020-10-28
US10057579B2 (en) 2018-08-21
US10455232B2 (en) 2019-10-22
US20210136383A1 (en) 2021-05-06
PL3346706T3 (pl) 2021-04-06
EP3346707A1 (en) 2018-07-11
EP2840791A1 (en) 2015-02-25
EP3343920A1 (en) 2018-07-04
KR20220151140A (ko) 2022-11-14
EP2840791B1 (en) 2018-03-28
KR101952183B1 (ko) 2019-02-26
EP3346707B1 (en) 2020-11-11
BR122021005953B1 (pt) 2023-03-14
CN111064966B (zh) 2022-05-31
KR20220006134A (ko) 2022-01-14
WO2013157825A1 (ko) 2013-10-24
CN111131820B (zh) 2022-05-31
EP3346705A1 (en) 2018-07-11
US11553183B2 (en) 2023-01-10
EP3346706A1 (en) 2018-07-11
US20150078442A1 (en) 2015-03-19
KR101527445B1 (ko) 2015-06-11
ES2837009T3 (es) 2021-06-29
PT2840791T (pt) 2018-04-16
JP6140269B2 (ja) 2017-05-31
EP3346708A1 (en) 2018-07-11
EP2840791A4 (en) 2015-12-23
KR20180068920A (ko) 2018-06-22
KR20190053827A (ko) 2019-05-20
KR101979681B1 (ko) 2019-05-17
BR122021010845B1 (pt) 2023-03-14
KR20130116831A (ko) 2013-10-24
BR112014022670B1 (pt) 2023-03-28
US9571841B2 (en) 2017-02-14

Similar Documents

Publication Publication Date Title
BR122021002351B1 (pt) Método e mídia de gravação não transitória legível por computador para decodificar vídeo
CN107517377B (zh) 视频解码方法
KR101292093B1 (ko) 화면내 예측 부호화를 위한 영상 부호화/복호화 장치 및 방법
BR112017010160B1 (pt) Aparelho e método para gerar uma pluralidade de coeficientes de transformada, método para codificar um quadro, aparelho e método para decodificar um quadro e meio legível por computador
BR112021008625A2 (pt) método de decodificação e codificação de vídeo e aparelho de decodificação e codificação de vídeo
BR122023022608A2 (pt) Aparelho de decodificação para decodificação de imagens, aparelho de codificação de imagem para codificação de imagens e aparelho para transmissão de dados para uma informação de imagem
BR122023020425A2 (pt) Aparelho de decodificação/ codificação para decodificação/codificação de imagens e aparelho para transmissão de dados para uma imagem
KR20100020926A (ko) H.264 표준의 영상 프레임에서 섬네일 이미지를 생성하는 방법

Legal Events

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

Free format text: PRAZO DE VALIDADE: 20 (VINTE) ANOS CONTADOS A PARTIR DE 16/04/2013, OBSERVADAS AS CONDICOES LEGAIS