BR112019013834A2 - método e aparelho para codificar / decodificar sinal de vídeo usando transformada secundária - Google Patents

método e aparelho para codificar / decodificar sinal de vídeo usando transformada secundária Download PDF

Info

Publication number
BR112019013834A2
BR112019013834A2 BR112019013834A BR112019013834A BR112019013834A2 BR 112019013834 A2 BR112019013834 A2 BR 112019013834A2 BR 112019013834 A BR112019013834 A BR 112019013834A BR 112019013834 A BR112019013834 A BR 112019013834A BR 112019013834 A2 BR112019013834 A2 BR 112019013834A2
Authority
BR
Brazil
Prior art keywords
transform
block
size
core
decoder
Prior art date
Application number
BR112019013834A
Other languages
English (en)
Inventor
Jang Hyeongmoon
Lim Jaehyun
Nam Junghak
Kim Seunghwan
Original Assignee
Lg Electronics Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Lg Electronics Inc filed Critical Lg Electronics Inc
Publication of BR112019013834A2 publication Critical patent/BR112019013834A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/40Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video transcoding, i.e. partial or full decoding of a coded input stream followed by re-encoding of the decoded output stream
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • 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/12Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
    • H04N19/122Selection of transform size, e.g. 8x8 or 2x4x8 DCT; Selection of sub-band transforms of varying structure or type
    • 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/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/14Coding unit complexity, e.g. amount of activity or edge presence estimation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding

Landscapes

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

Abstract

a presente invenção refere-se a um método e um aparelho para codificar / decodificar um sinal de vídeo. especificamente, um método para decodificar um sinal de vídeo pode incluir: gerar um bloco de transformada quantizado executando decodificação de entropia para o sinal de vídeo; gerar um bloco de transformada desquantizado executando desquantização para o bloco de transformada quantizado; determinar se deve-se aplicar transformada inversa secundária com base em informação relacionada a um coeficiente não nulo no bloco de transformada desquantizado; e executar a transformada inversa secundária para o bloco de transformada desquantizado usando um núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado.

Description

“MÉTODO E APARELHO PARA CODIFICAR / DECODIFICAR SINAL DE VÍDEO USANDO TRANSFORMADA SECUNDÁRIA”
CAMPO DA TÉCNICA [001 ]A presente invenção refere-se a um aparelho e a um aparelho para codificar / decodificar um sinal de vídeo e, mais particularmente, a um método para codificar / decodificar um sinal de vídeo utilizando transformada secundária e um aparelho para suportar o mesmo.
FUNDAMENTOS DA INVENÇÃO [002]Codificação por compressão significa uma série de técnicas de processamento de sinal para transmissão de informação digitalizada através de uma linha de comunicação ou técnicas para armazenar informação em uma forma adequada para um meio de armazenamento. O meio, incluindo uma figura, uma imagem, áudio, etc., pode ser um alvo para a codificação por compressão e, particularmente, uma técnica para executar a codificação por compressão em uma imagem é chamada de compressão de imagem de vídeo.
[003]Os conteúdos de vídeo de próxima geração devem ter as características de alta resolução espacial, alta taxa de quadros e alta dimensionalidade na representação da cena. De modo a processar tais conteúdos, resulta em um aumento drástico no armazenamento de memória, na taxa de acesso à memória e na capacidade de processamento.
[004]Assim, é necessário projetar uma ferramenta de codificação para processar com eficiência o conteúdo de vídeo de próxima geração.
SUMÁRIO DA INVENÇÃO [005]Problema Técnico [006]Uma modalidade da presente invenção fornece um método para aplicar a transformada secundária a um sinal de uma região de transformada que é primariamente transformada.
Petição 870190065456, de 11/07/2019, pág. 8/70
2/48 [007]Além disso, uma modalidade da presente invenção fornece um método para dimensionar eficientemente o tamanho de um núcleo de transformada usado para a transformada secundária.
[008]Além disso, uma modalidade da presente invenção propõe um método para selecionar de forma adaptativa um núcleo de transformada de acordo com um tamanho de um bloco e executa uma transformada secundária usando o núcleo de transformada selecionado.
[009]Além disso, uma modalidade da presente invenção fornece um método para selecionar de forma adaptativa um núcleo adaptado à transformada secundária, transmitindo o tamanho de um núcleo de transformada.
[010]Além disso, uma modalidade da presente invenção fornece um método para determinar se deve aplicar a transformada secundária ou uma faixa de aplicação usando um sinal residual.
[011]Além disso, uma modalidade da presente invenção fornece um método para derivar um tamanho de um núcleo de transformada aplicado à transformada secundária usando um sinal residual.
[012]Os objetivos da presente invenção não estão limitados aos objetivos técnicos descritos acima, e outras técnicas que são objetivos não mencionados aqui podem ser entendidas pelos versados na técnica a partir da descrição abaixo.
[013]Solução Técnica [014]Em um aspecto da presente invenção, um método para decodificar um sinal de vídeo pode incluir: gerar um bloco de transformada quantizado executando a decodificação de entropia para o sinal de vídeo; gerar um bloco de transformada desquantizado executando desquantização para o bloco de transformada quantizado; determinar se deve-se deve aplicar transformada inversa secundária com base em informação relacionada a um coeficiente não nulo no bloco transformado desquantizado; e executar a transformada inversa secundária para o bloco de
Petição 870190065456, de 11/07/2019, pág. 9/70
3/48 transformada desquantizado usando um núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado.
[015]De preferência, a determinação de se deve aplicar a transformada inversa secundária pode incluir verificar se um ou mais coeficientes não nulos existem em uma região específica superior esquerda do bloco de transformada desquantizado, e se existir um ou mais coeficientes não nulos na região específica, a transformada inversa secundária pode ser aplicada ao bloco de transformada desquantizado.
[016]Preferencialmente, a determinação de se deve aplicar a transformada inversa secundária pode incluir verificar o número de coeficientes não nulos na região específica superior esquerda do bloco de transformada desquantizado, e se o número de coeficientes não nulos na região específica exceder um limite específico, a transformada inversa secundária pode ser aplicada ao bloco de transformada desquantizado.
[017]De preferência, a determinação de se deve aplicar a transformada inversa secundária pode incluir particionar o bloco de transformada desquantizado em sub-blocos com um tamanho específico, e determinar se deve aplicar a transformada inversa secundária em unidades do sub-bloco.
[018]De preferência, a determinação de se deve aplicar a transformada inversa secundária em unidades do sub-bloco pode incluir verificar se há um ou mais coeficientes não nulos em um sub-bloco atual, e se um ou mais coeficientes não nulos existem no sub-bloco atual, a transformada inversa secundária pode ser aplicada ao sub-bloco atual.
[019]Preferencialmente, a determinação de se deve aplicar a transformada inversa secundária em unidades do sub-bloco pode incluir verificar o número de coeficientes não nulos no sub-bloco atual, e se o número de coeficientes não nulos no sub-bloco atual exceder um limite específico, a transformada inversa secundária pode ser aplicada ao sub-bloco atual.
Petição 870190065456, de 11/07/2019, pág. 10/70
4/48 [020]Preferencialmente, o método pode ainda incluir determinar um tamanho do núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado com base em informação relacionada ao coeficiente não nulo no bloco de transformada desquantizado.
[021 ]De preferência, o tamanho do núcleo de transformada inversa secundária pode ser determinado como o tamanho do menor núcleo de transformada inversa secundária dentre núcleos de transformada inversa secundária incluindo os coeficientes não nulos que existem em uma região que tem um tamanho específico no tamanho específico superior esquerdo do bloco de transformada desquantizado.
[022]De preferência, o método pode ainda incluir: se o tamanho do bloco de transformada desquantizado for maior do que um bloco tendo um tamanho mínimo predeterminado, extrair uma sintaxe indicando o tamanho do núcleo de transformada inversa secundária do sinal de vídeo; e determinar o tamanho do núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado com base na sintaxe.
[023]De preferência, a sintaxe que indica o tamanho do núcleo de transformada inversa secundária pode ser transmitida em unidades de uma sequência, uma imagem, uma fatia, um bloco de codificação, ou um bloco de transformada.
[024]Em outro aspecto da presente invenção, um aparelho para decodificar um sinal de vídeo pode incluir: uma unidade de decodificação de entropia gerando um bloco de transformada quantizado executando a decodificação de entropia para o sinal de vídeo; uma unidade de desquantização gerando um bloco de transformada desquantizado executando desquantização para o bloco de transformada quantizado; uma unidade de determinação de transformada inversa secundária determinando se deve aplicar transformada inversa secundária com base em informação relacionada com um coeficiente não nulo no bloco de transformada desquantizado; e uma unidade
Petição 870190065456, de 11/07/2019, pág. 11/70
5/48 de transformada inversa secundária executando a transformada inversa secundária para o bloco de transformada desquantizado utilizando um núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado.
EFEITOS VANTAJOSOS [025]De acordo com uma modalidade da presente invenção, o desempenho de compressão pode ser melhorado mais ainda executando uma transformada secundária para um sinal de um domínio de transformada que é transformado primariamente e a quantidade de dados de sinal residual sinalizados para um decodificador pode ser eficientemente reduzida.
[026]Além disso, de acordo com uma modalidade da presente invenção, ao aplicar a transformada secundária, é possível aumentar a eficiência de compressão pela determinação de núcleos de tamanhos adequados para blocos de vários tamanhos.
[027]Em adição, de acordo com uma modalidade da presente invenção, núcleos de transformada de vários tamanhos podem ser aplicados sinalizando um tamanho otimizado de informação de núcleo para um decodificador, independentemente do tamanho de um bloco, melhorando assim o desempenho de compressão.
[028]Os efeitos técnicos da presente invenção não estão limitados aos efeitos técnicos descritos acima, e outros efeitos técnicos não mencionados aqui podem ser entendidos pelos versados na técnica a partir da descrição abaixo.
BREVE DESCRIÇÃO DOS DESENHOS [029]Os desenhos em anexo, que são aqui incluídos como parte da descrição para ajudar a compreender a presente invenção, fornecem modalidades da presente invenção e descrevem as características técnicas da presente invenção com a descrição abaixo.
[030]A Figura 1 ilustra um diagrama de blocos esquemático de um codificador
Petição 870190065456, de 11/07/2019, pág. 12/70
6/48 no qual a codificação de uma imagem fixa ou sinal de vídeo é executada, como uma modalidade à qual a presente invenção é aplicada.
[031 ]A Figura 2 ilustra um diagrama de blocos esquemático de um decodificador no qual a decodificação de uma imagem fixa ou sinal de vídeo é executada, como uma modalidade à qual a presente invenção é aplicada.
[032]A Figura 3 é um diagrama para descrever uma estrutura de divisão de uma unidade de codificação que pode ser aplicada à presente invenção.
[033]A Figura 4 é um diagrama para descrever uma unidade de predição que pode ser aplicada à presente invenção.
[034]A Figura 5 é um diagrama para descrever um método para determinar um tamanho de um núcleo de transformada utilizado para a transformada secundária com base no tamanho de um bloco como uma modalidade à qual a presente invenção é aplicada.
[035]As Figuras 6 e 7 são diagramas para descrever um método para determinar um tamanho de um núcleo de transformada utilizado para a transformada secundária com base em uma largura e uma altura de um bloco como uma modalidade à qual a presente invenção é aplicada.
[036]A Figura 8 representa um caso em que a transformada não separável é aplicada para a transformada secundária ser assumida.
[037]A Figura 9 é um fluxograma que mostra um método para determinar um tamanho de um núcleo de transformada utilizado para transformada secundária como uma modalidade à qual a presente invenção é aplicada.
[038]A Figura 10 é um fluxograma que ilustra um método para determinar um tamanho de um núcleo de transformada utilizado para a transformada secundária como uma modalidade à qual a presente invenção é aplicada.
[039]A Figura 11 é um diagrama que ilustra um método para determinar se deve aplicar uma transformada secundária utilizando um sinal residual de acordo com
Petição 870190065456, de 11/07/2019, pág. 13/70
7/48 uma modalidade da presente invenção.
[040]As Figuras 12 e 13 são diagramas que ilustram um método para determinar se deve aplicar a transformada secundária utilizando um sinal residual de acordo com uma modalidade da presente invenção.
[041 ]A Figura 14 é um diagrama que ilustra um método para determinar um tamanho de um núcleo de transformada secundária utilizando um sinal residual de acordo com uma modalidade da presente invenção.
[042]A Figura 15 é um diagrama que ilustra um método de decodificação de um sinal de vídeo de acordo com uma modalidade da presente invenção.
[043]A Figura 16 é um diagrama que ilustra um aparelho de decodificação de um sinal de vídeo de acordo com uma modalidade da presente invenção.
DESCRIÇÃO DETALHADA [044]A seguir, uma modalidade preferencial da presente invenção será descrita com referência aos desenhos em anexo. A descrição que será feita abaixo com os desenhos em anexo é para descrever modalidades exemplificativas da presente invenção, e não é destinada a descrever a única modalidade à qual a presente invenção pode ser implementada. A descrição abaixo inclui detalhes particulares para fornecer uma perfeita compreensão da presente invenção. No entanto, entende-se que a presente invenção pode ser executada sem os detalhes particulares para os versados na técnica.
[045]Em alguns casos, a fim de evitar que o conceito técnico da presente invenção não seja claro, estruturas ou dispositivos que são publicamente conhecidos podem ser omitidos, ou podem ser representados como um diagrama de blocos centrando nas funções centrais das estruturas ou dos dispositivos.
[046]Além disso, embora os termos gerais amplamente utilizados atualmente sejam selecionados como os termos na presente invenção, tanto quanto possível, um termo que é arbitrariamente selecionado pelo requerente é usado em um caso
Petição 870190065456, de 11/07/2019, pág. 14/70
8/48 específico. Uma vez que o significado do termo seja claramente descrito na parte correspondente da descrição em tal caso, entende-se que a presente invenção não será simplesmente interpretada pelos termos utilizados apenas na descrição da presente invenção, mas o significado dos termos deve ser descoberto.
[047]Terminologias específicas usadas na descrição abaixo podem ser fornecidas para ajudar a compreensão da presente invenção. Além disso, a terminologia específica pode ser modificada para outras formas dentro do escopo do conceito técnico da presente invenção. Por exemplo, um sinal, dados, uma amostra, uma imagem, um quadro, um bloco, etc., podem ser adequadamente substituídos e interpretados em cada processo de codificação.
[048]A seguir, nesta especificação, uma ‘unidade de processamento’ significa uma unidade na qual um processo de processamento de codificação / decodificação, tal como predição, transformada e/ou quantização, é executado. A seguir, por conveniência de descrição, a unidade de processamento pode ser chamada de um ‘bloco de processamento’ ou um ‘bloco’.
[049]A unidade de processamento pode ser interpretada como incluindo uma unidade para um componente luma e uma unidade para um componente chroma. Por exemplo, a unidade de processamento pode corresponder a uma Unidade de Árvore de Codificação (CTU), uma Unidade de Codificação (CU), uma Unidade de Predição (PU), ou uma Unidade de Transformada (TU).
[050]Além disso, a unidade de processamento pode ser interpretada como a unidade para o componente luma e a unidade para o componente chroma. Por exemplo, a unidade de processamento pode corresponder a um Bloco de Árvore de Codificação (CTB), um Bloco de Codificação (CB), um Bloco de Predição (PB) ou um Bloco de Transformada (TB) para o componente luma. Alternativamente, a unidade de processamento pode corresponder ao Bloco de Árvore de Codificação (CTB), ao Bloco de Codificação (CB), ao Bloco de Predição (PB) ou ao Bloco de Transformada
Petição 870190065456, de 11/07/2019, pág. 15/70
9/48 (TB) para o componente chroma. Além disso, a presente invenção não está limitada a isso e a unidade de processamento pode ser interpretada como incluindo a unidade para o componente luma e a unidade para o componente chroma.
[051]Além disso, a unidade de processamento não está particularmente limitada a um bloco quadrado, mas pode ser configurada como uma forma poligonal tendo três ou mais vértices.
[052]Em adição, daqui em diante, nesta especificação, um pixel e similares serão coletivamente chamados de uma amostra. Além disso, usar a amostra pode significar usar um valor de pixel e similares.
[053]A Figura 1 ilustra um diagrama de blocos esquemático de um codificador no qual a codificação de uma imagem fixa ou sinal de vídeo é executada, como uma modalidade à qual a presente invenção é aplicada.
[054]Com referência à Figura 1, o codificador 100 pode incluir uma unidade de divisão de vídeo 110, um subtrator 115, uma unidade de transformada 120, uma unidade de quantização 130, uma unidade de desquantização 140, uma unidade de transformada inversa 150, uma unidade de filtragem 160, um armazenador temporário de imagem decodificada (DPB) 170, uma unidade de predição 180 e uma unidade de codificação de entropia 190. Além disso, a unidade de predição 180 pode incluir uma unidade de predição inter 181 e uma unidade de predição intra 182.
[055]A unidade de divisão de vídeo 110 divide um sinal de vídeo de entrada (ou imagem ou quadro), inserido no codificador 100, em uma ou mais unidades de processamento.
[056]O subtrator 115 gera um sinal residual (ou bloco residual) subtraindo um sinal de predição (ou bloco de predição), emitido pela unidade de predição 180 (isto é, pela unidade de predição inter 181 ou pela unidade de predição intra 182), a partir do sinal de vídeo de entrada. O sinal residual gerado (ou bloco residual) é transmitido para a unidade de transformada 120.
Petição 870190065456, de 11/07/2019, pág. 16/70
10/48 [057]A unidade de transformada 120 gera coeficientes de transformada aplicando um esquema de transformada (por exemplo, transformada discreta de cosseno (DCT), transformada discreta de seno (DST), transformada baseada em gráfico (GBT) ou transformada de Karhunen-Loeve (KLT)) ao sinal residual (ou bloco residual). Neste caso, a unidade de transformada 120 pode gerar coeficientes de transformada executando transformada utilizando um modo de predição aplicado ao bloco residual e um esquema de transformada determinado com base no tamanho do bloco residual.
[058]A unidade de quantização 130 quantifica o coeficiente de transformada e transmite-o para a unidade de codificação de entropia 190, e a unidade de codificação de entropia 190 executa uma operação de codificação de entropia do sinal quantizado e transmite-o como um fluxo de bits.
[059]Entretanto, o sinal quantizado emitido pela unidade de quantização 130 pode ser utilizado para gerar um sinal de predição. Por exemplo, um sinal residual pode ser reconstruído aplicando desquantização e transformada inversa ao sinal quantizado através da unidade de desquantização 140 e a unidade de transformada inversa 150. Um sinal reconstruído pode ser gerado adicionando o sinal residual reconstruído ao sinal de predição emitido pela unidade de predição inter 181 ou a unidade de predição intra 182.
[060]Enquanto isso, durante um processo de compressão, os blocos vizinhos são quantizados por diferentes parâmetros de quantização. Assim, um artefato no qual um limite de bloco é mostrado pode ocorrer. Tal fenômeno é chamado de um artefato de bloqueio, que é um dos fatores importantes para avaliar a qualidade da imagem. De modo a diminuir esse artefato, um processo de filtragem pode ser executado. Através desse processo de filtragem, o artefato de bloqueio é removido e o erro de uma imagem atual é diminuído ao mesmo tempo, melhorando assim a qualidade da imagem.
Petição 870190065456, de 11/07/2019, pág. 17/70
11/48 [061 ]A unidade de filtragem 160 aplica a filtragem ao sinal reconstruído, e o envia através de um dispositivo de reprodução ou o transmite para o armazenador temporário de imagem decodificada 170. O sinal filtrado transmitido para o armazenador temporário de imagem decodificada 170 pode ser usado como uma imagem de referência na unidade de predição inter 181. Como descrito acima, uma taxa de codificação, bem como a qualidade de imagem, podem ser melhoradas utilizando a imagem filtrada como uma imagem de referência em um modo de predição inter.
[062]O armazenador temporário de imagem decodificada 170 pode armazenar a imagem filtrada para usá-la como uma imagem de referência na unidade de predição inter 181.
[063]A unidade de predição inter 181 executa predição temporal e/ou predição espacial com referência à imagem reconstruída, a fim de remover a redundância temporal e/ou a redundância espacial. Neste caso, um artefato de bloqueio ou artefato de toque pode ocorrer porque uma imagem de referência usada para executar a predição é um sinal transformado que experimenta quantização ou desquantização em uma unidade de bloco quando é codificado / decodificado previamente.
[064]Consequentemente, de modo a resolver a degradação de desempenho atribuível à descontinuidade de tal sinal ou quantização, os sinais entre os pixels podem ser interpelados em uma unidade de subpixel aplicando um filtro passa-baixa à unidade de predição inter 181. No caso, o subpixel significa um pixel virtual gerado pela aplicação de um filtro de interpolação, e um pixel inteiro significa um pixel real que está presente em uma imagem reconstruída. Uma interpolação linear, uma interpolação bilinear, um filtro de wiener, e similares podem ser aplicados como um método de interpolação.
[065]O filtro de interpolação pode ser aplicado à imagem reconstruída, e pode melhorar a precisão da predição. Por exemplo, a unidade de predição inter 181 pode
Petição 870190065456, de 11/07/2019, pág. 18/70
12/48 efetuar predição gerando um pixel de interpolação aplicando o filtro de interpelação ao pixel inteiro e utilizando o bloco interpolado incluindo pixels interpolados como um bloco de predição.
[066]A unidade de predição intra 182 prevê um bloco atual com referência a amostras vizinhas ao bloco que está agora sendo codificado. A unidade de predição intra 182 pode executar o seguinte procedimento para executar predição intra. Em primeiro lugar, a unidade de predição intra 182 pode preparar uma amostra de referência necessária para gerar um sinal de predição. Além disso, a unidade de predição intra 182 pode gerar um sinal de predição usando a amostra de referência preparada. Em seguida, a unidade de predição intra 182 pode codificar um modo de predição. Neste caso, a amostra de referência pode ser preparada através de preenchimento de amostra de referência e/ou filtragem de amostra de referência. Um erro de quantização pode estar presente porque a amostra de referência experimenta a predição e o processo de reconstrução. Consequentemente, a fim de reduzir tal erro, um processo de filtragem de amostra de referência pode ser executado em cada modo de predição usado para a predição intra.
[067]O sinal de predição (ou bloco de predição) gerado através da unidade de predição inter 181 ou da unidade de predição intra 182 pode ser usado para gerar um sinal reconstruído (ou bloco reconstruído) ou pode ser usado para gerar um sinal residual (ou bloco residual).
[068]A Figura 2 ilustra um diagrama de blocos esquemático de um decodificador no qual a decodificação de uma imagem fixa ou sinal de vídeo é executada, como uma modalidade à qual a presente invenção é aplicada.
[069]Com referência à Figura 2, o decodificador 200 pode incluir uma unidade de decodificação de entropia 210, uma unidade de desquantização 220, uma unidade de transformada inversa 230, um somador 235, uma unidade de filtragem 240, um armazenador temporário de imagem decodificada (DPB) 250 e uma unidade de
Petição 870190065456, de 11/07/2019, pág. 19/70
13/48 predição 260. Além disso, a unidade de predição 260 pode incluir uma unidade de predição inter 261 e uma unidade de predição intra 262.
[070]Além disso, um sinal de vídeo reconstruído emitido através do decodificador 200 pode ser reproduzido através de um dispositivo de reprodução.
[071]O decodificador 200 recebe um sinal (isto é, fluxo de bits) emitido pelo codificador 100 mostrado na Figura 1. A unidade de decodificação de entropia 210 executa uma operação de decodificação de entropia no sinal recebido.
[072]A unidade de desquantização 220 obtém coeficientes de transformada a partir do sinal decodificado de entropia utilizando informação de tamanho da etapa de quantização.
[073]A unidade de transformada inversa 230 obtém um sinal residual (ou bloco residual) transformando inversamente os coeficientes de transformada aplicando um esquema de transformada inversa.
[074]O somador 235 adiciona o sinal residual obtido (ou bloco residual) ao sinal de predição (ou bloco de predição) emitido pela unidade de predição 260 (isto é, a unidade de predição inter 261 ou a unidade de predição intra 262), gerando, desse modo, um sinal reconstruído (ou bloco reconstruído).
[075]A unidade de filtragem 240 aplica a filtragem ao sinal reconstruído (ou bloco reconstruído) e emite o sinal filtrado para um dispositivo de reprodução ou transmite o sinal filtrado para o armazenador temporário de imagem decodificada 250. O sinal filtrado transmitido para o armazenador temporário de imagem decodificada 250 pode ser usado como uma imagem de referência na unidade de predição inter 261.
[076]Nesta especificação, as modalidades descritas na unidade de filtragem 160, na unidade de predição inter 181 e na unidade de predição intra 182 do codificador 100 podem ser aplicadas de forma idêntica à unidade de filtragem 240, à unidade de predição inter 261 e unidade de predição intra 262 do decodificador,
Petição 870190065456, de 11/07/2019, pág. 20/70
14/48 respectivamente.
[077]Estrutura de Divisão da Unidade de Processamento [078]Em geral, um método de compressão de imagem baseado em blocos é usado na técnica de compressão (por exemplo, HEVC) de uma imagem estática ou de um vídeo. O método de compressão de imagem baseado em blocos é um método de processamento de uma imagem dividindo-a em unidades de bloco específicas, e pode diminuir o uso de memória e uma carga computacional.
[079]A Figura 3 é um diagrama para descrever uma estrutura de divisão de uma unidade de codificação que pode ser aplicada à presente invenção.
[080]Um codificador divide uma única imagem (ou figura) em unidades de árvore de codificação (CTUs) de forma quadrangular, e codifica sequencialmente as CTUs uma a uma, de acordo com a ordem de varredura raster.
[081 ]Em HEVC, um tamanho de CTU pode ser determinado como um de 64 χ 64, 32 χ 32 e 16 χ 16. O codificador pode selecionar e usar o tamanho de uma CTU com base na resolução de um sinal de vídeo de entrada ou nas características do sinal de vídeo de entrada. A CTU inclui um bloco de árvore de codificação (CTB) para um componente luma e o CTB para dois componentes chroma que correspondem a ele.
[082]Uma CTU pode ser dividida em uma estrutura quad-tree. Isto é, uma CTU pode ser dividida em quatro unidades, cada uma tendo uma forma quadrada e tendo metade do tamanho horizontal e metade do tamanho vertical, sendo assim capaz de gerar unidades de codificação (CUs). Tal divisão da estrutura quad-tree pode ser executada recursivamente. Ou seja, as CUs são hierarquicamente separadas de uma CTU na estrutura quad-tree.
[083]Uma CU significa uma unidade básica para o processo de processamento de um sinal de vídeo de entrada, por exemplo, codificação na qual a predição intra / inter é executada. Uma CU inclui um bloco de codificação (CB) para
Petição 870190065456, de 11/07/2019, pág. 21/70
15/48 um componente luma e um CB para dois componentes chroma correspondentes ao componente luma. Em HEVC, um tamanho de CU pode ser determinado como um de 64 χ 64, 32 χ 32, 16 χ 16 e 8 χ 8.
[084]Com referência à Figura 3, o nó raiz de uma quad-tree está relacionado a uma CTU. A quad-tree é dividida até que um nó folha seja alcançado. O nó folha corresponde a uma CU.
[085]lsso é descrito em mais detalhes. A CTU corresponde ao nó raiz e tem o menor valor de profundidade (ou seja, profundidade = 0). Uma CTU pode não ser dividida dependendo das características de um sinal de vídeo de entrada. Nesse caso, a CTU corresponde a uma CU.
[086]Uma CTU pode ser dividida em um formato quad-tree. Como um resultado, os nós inferiores, isto é, uma profundidade 1 (profundidade = 1), são gerados. Além disso, um nó (isto é, nó folha) que pertence aos nós inferiores com a profundidade de 1 e que não é mais dividido, corresponde a uma CU. Por exemplo, na Figura 3(b), uma CU(a), uma CU(b) e uma CU(j) correspondentes aos nós a, b e j foram divididas a partir da CTU, e têm uma profundidade de 1.
[087]Ao menos um dos nós com a profundidade de 1 pode ser dividido em um formato quad-tree. Como um resultado, nós inferiores com profundidade 1 (isto é, profundidade = 2) são gerados. Além disso, um nó (isto é, nó folha) que pertence aos nós inferiores com a profundidade de 2 e que não é mais dividido, corresponde a uma CU. Por exemplo, na Figura 3(b), uma CU(c), um CU(h) e um CU(i) correspondentes aos nós c, h e i foram divididas duas vezes a partir da CTU, e têm uma profundidade de 2.
[088]Além disso, ao menos um dos nós com a profundidade de 2 pode ser novamente dividido em um formato quad-tree. Como um resultado, nós inferiores com uma profundidade 3 (isto é, profundidade = 3) são gerados. Além disso, um nó (isto é, nó folha) que pertence aos nós inferiores com a profundidade de 3 e que não é mais
Petição 870190065456, de 11/07/2019, pág. 22/70
16/48 dividido, corresponde a uma CU. Por exemplo, na Figura 3(b), uma CU(d), um CU(e), um CU(f) e uma CU(g) correspondentes aos nós d, e, f e g foram divididas três vezes a partir da CTU, e têm uma profundidade de 3.
[089]No codificador, um tamanho máximo ou tamanho mínimo de uma CU pode ser determinado com base nas características de uma imagem de vídeo (por exemplo, resolução) ou considerando a taxa de codificação. Além disso, informação sobre o tamanho máximo ou mínimo ou informação capazes de derivar a informação podem ser incluídas em um fluxo de bits. Uma CU tendo um tamanho máximo é chamada de a maior unidade de codificação (LCU), e uma CU tendo um tamanho mínimo é chamada de a menor unidade de codificação (SCU).
[090]Além disso, uma CU com uma estrutura de árvore pode ser hierarquicamente dividida com informação de profundidade máxima predeterminada (ou informação de nível máximo). Além disso, cada CU dividida pode ter informação de profundidade. Como a informação de profundidade representa uma contagem de divisão e/ou o grau de uma CU, ela pode incluir informação sobre o tamanho de uma CU.
[091]Como a LCU é dividida em um formato quad-tree, o tamanho da SCU pode ser obtido usando um tamanho da LCU e a informação de profundidade máxima. Ou, inversamente, o tamanho da LCU pode ser obtido usando um tamanho da SCU e a informação de profundidade máxima da árvore.
[092]Para uma única CU, a informação (por exemplo, um sinalizador de divisão de CU (split_cu_flag)) que representa se a CU correspondente está dividida pode ser encaminhada para o decodificador. Esta informação de divisão está incluída em todas as CUs, exceto na SCU. Por exemplo, quando o valor do sinalizador que representa se dividir é ‘Γ, a CU correspondente é dividida em quatro CUs, e quando o valor do sinalizador que representa se dividir é Ό’, a CU correspondente não é mais dividida, e o processo de processamento para a CU correspondente pode ser
Petição 870190065456, de 11/07/2019, pág. 23/70
17/48 executado.
[093]Como descrito acima, uma CU é uma unidade básica da codificação na qual a predição intra ou a predição inter é executada. O HEVC divide a CU em uma unidade de predição (PU) para codificar um sinal de vídeo de entrada mais eficientemente.
[094]Uma PU é uma unidade básica para gerar um bloco de predição e, mesmo em uma única CU, o bloco de predição pode ser gerado de maneira diferente por uma unidade de PU. No entanto, a predição intra e a predição inter não são usadas juntas para as PUs que pertencem a uma única CU, e as PUs que pertencem a uma única CU são codificadas pelo mesmo método de predição (ou seja, a predição intra ou a predição inter).
[095]Uma PU não é dividida na estrutura quad-tree, mas é dividida uma vez em uma única CU em uma forma predeterminada. Isso será descrito com referência ao desenho abaixo.
[096]A Figura 4 é um diagrama para descrever uma unidade de predição que pode ser aplicada à presente invenção.
[097]Uma PU é dividida diferentemente dependendo se o modo predição intra é usado ou se o modo predição inter é usado como o modo de codificação da CU à qual a PU pertence.
[098]A Figura 4(a) ilustra uma PU se o modo de predição intra é usado, e a Figura 4(b) ilustra uma PU se o modo de predição inter é usado.
[099]Com referência à Figura 4(a), assumindo que o tamanho de uma única CU é 2N x 2N (N = 4, 8, 16 e 32), a única CU pode ser dividida em dois tipos (ou seja, 2N x 2N ou N x N).
[0100]Nesse caso, se uma única CU for dividida na PU de forma 2N χ 2N, isso significa que apenas uma PU está presente em uma única CU.
[0101]Entretanto, se uma única CU é dividida na PU de forma N χ N, uma
Petição 870190065456, de 11/07/2019, pág. 24/70
18/48 única CU é dividida em quatro PUs, e diferentes blocos de predição são gerados para cada unidade PU. No entanto, essa divisão de PU pode ser executada somente se o tamanho do CB para o componente luma de CU for o tamanho mínimo (ou seja, o caso em que uma CU é uma SCU).
[0102]Com referência à Figura 4(b), assumindo que o tamanho de uma única CU é 2N χ 2N (N = 4, 8, 16 e 32), uma única CU pode ser dividida em oito tipos de PU (ou seja, 2N χ 2N, N χ N, 2N χ N, N χ 2N, nL χ 2N, nR χ 2N, 2N χ nU e 2N χ nD).
[0103]Como na predição intra, a divisão de PU de forma NxN pode ser executada somente se o tamanho de CB para o componente luma de CU for o tamanho mínimo (ou seja, o caso em que uma CU é uma SCU).
[0104]A predição inter suporta a divisão de PU na forma de 2N χ N que é dividida em uma direção horizontal e na forma de N χ 2N que é dividida em uma direção vertical.
[0105]Além disso, a predição inter suporta a divisão de PU na forma de nL χ 2N, nR χ 2N, 2N χ nU e 2N χ nD, que é uma divisão de movimento assimétrica (AMP). Nesse caso, ‘n’ significa 1/4 do valor de 2N. No entanto, o AMP não pode ser usado se a CU à qual a PU pertence for a CU de tamanho mínimo.
[0106]De modo a codificar o sinal de vídeo de entrada em uma única CTU de forma eficiente, a estrutura de divisão ideal da unidade de codificação (CU), da unidade de predição (PU) e da unidade de transformada (TU) pode ser determinada com base em um valor de taxa de distorção mínimo através do processo de processamento como segue. Por exemplo, quanto ao processo de divisão de CU ideal em uma CTU de 64 χ 64, o custo de distorção de taxa pode ser calculado através do processo de divisão de uma CU de tamanho 64 χ 64 para uma CU de tamanho 8x8. O processo detalhado é como segue.
[0107] 1) A estrutura de divisão ideal de uma PU e TU que gera o valor de taxa de distorção mínimo é determinada executando predição inter / intra, transformada /
Petição 870190065456, de 11/07/2019, pág. 25/70
19/48 quantização, desquantização / transformada inversa e codificação de entropia na CU de tamanho 64 χ 64.
[0108]2) A estrutura de divisão ideal de uma PU e uma TU é determinada para dividir a CU 64 χ 64 em quatro CUs de tamanho 32 χ 32 e gerar o valor de taxa de distorção mínimo para cada CU 32 χ 32.
[0109]3) A estrutura de divisão ideal de uma PU e TU é determinada para dividir ainda mais a CU 32 χ 32 em quatro CUs de tamanho 16 χ 16 e gerar o valor de taxa de distorção mínimo para cada CU 16 χ 16.
[0110]4) A estrutura de divisão ideal de uma PU e uma TU é determinada para dividir ainda mais a CU 16 χ 16 em quatro CUs de tamanho 8 χ 8 e gerar o valor de taxa de distorção mínimo para cada 8x8 CU.
[0111 ]5) A estrutura de divisão ideal de uma CU no bloco 16 χ 16 é determinada comparando o valor de taxa de distorção de 16 χ 16 CU obtido no processo 3) com a adição do valor de distorção de taxa de distorção das quatro CUs 8x8 obtidas no processo 4). Este processo também é executado para as restantes três CUs 16 χ 16 da mesma maneira.
[0112]6) A estrutura de divisão ideal de CU no bloco de 32 χ 32 é determinada comparando o valor de taxa de distorção da CU 32 χ 32 obtido no processo 2) com a adição do valor de distorção de taxa das quatro CUs 16 χ 16 que é obtido no processo 5). Este processo também é executado para as restantes três CUs 32 χ 32 da mesma maneira.
[0113]7) Finalmente, a estrutura de divisão ideal de CU no bloco de 64 χ 64 é determinada comparando o valor de taxa de distorção da CU 64 χ 64 obtido no processo 1) com a adição do valor de taxa de distorção das quatro CUs 32 χ 32 obtidas no processo 6).
[0114]No modo de predição intra, um modo de predição é selecionado como uma unidade PU, e a predição e a reconstrução são executadas no modo de predição
Petição 870190065456, de 11/07/2019, pág. 26/70
20/48 selecionado em uma unidade TU real.
[0115]Uma TU significa uma unidade básica na qual a predição e a reconstrução reais são executadas. Uma TU inclui um bloco de transformada (TB) para um componente luma e um TB para dois componentes chroma correspondentes ao componente luma.
[0116]No exemplo da Figura 3, como em um exemplo no qual uma CTU é dividida na estrutura quad-tree para gerar uma CU, uma TU é dividida hierarquicamente a partir de uma CU a ser codificada na estrutura quad-tree.
[0117]A divisão de TUs a partir de uma CU pode ser dividida em TUs menores e inferiores, porque uma TU é dividida na estrutura quad-tree. Em HEVC, o tamanho de uma TU pode ser determinado como sendo de 32 χ 32, 16 χ 16, 8 χ 8 e 4 χ 4.
[0118]Com relação novamente à Figura 3, o nó raiz de uma quad-tree é considerado como relacionado a uma CU. A quad-tree é dividida até que um nó folha seja alcançado e o nó folha corresponda a uma TU.
[0119]lsso é descrito em mais detalhes. Uma CU corresponde a um nó raiz e tem o menor valor de profundidade (ou seja, profundidade = 0). Uma CU pode não ser dividida dependendo das características de uma imagem de entrada. Neste caso, a CU corresponde a uma TU.
[0120]Uma CU pode ser dividida em uma forma de quad-tree. Como um resultado, nós inferiores com profundidade 1 (profundidade = 1) são gerados. Além disso, um nó (isto é, o nó folha) que pertence aos nós inferiores tendo a profundidade de 1 e que não é mais dividido, corresponde a uma TU. Por exemplo, na Figura 3(b), uma TU(a), uma TU(b) e uma TU(j) correspondentes aos nós a, b e j são divididas uma vez a partir de uma CU e têm uma profundidade de 1.
[0121]Ao menos um dos nós com a profundidade de 1 pode ser dividido em uma forma de quad-tree novamente. Como um resultado, nós inferiores tendo profundidade de 2 (isto é, profundidade = 2) são gerados. Além disso, um nó (isto é,
Petição 870190065456, de 11/07/2019, pág. 27/70
21/48 nó folha) que pertence aos nós inferiores tendo a profundidade de 2 e que não é mais dividido, corresponde a uma TU. Por exemplo, na Figura 3(b), uma TU(c), uma TU(h) e uma TU(i) correspondentes ao nó c, h e I foram divididas duas vezes a partir da CU e têm a profundidade de 2.
[0122]Além disso, ao menos um dos nós tendo a profundidade de 2 pode ser novamente dividido em uma forma de quad-tree. Como um resultado, nós inferiores com uma profundidade de 3 (isto é, profundidade = 3) são gerados. Além disso, um nó (isto é, o nó folha) que pertence aos nós inferiores com a profundidade de 3 e que não é mais dividido, corresponde a uma TU. Por exemplo, na Figura 3(b), uma TU(d), uma TU(e), uma TU(f) e uma TU(g) correspondentes aos nós d, e, f e g foram divididas três vezes a partir da CU e têm a profundidade de 3.
[0123]Uma TU com estrutura quad-tree pode ser dividida hierarquicamente com informação de profundidade máxima predeterminada (ou informação de nível máximo). Além disso, cada TU pode ter informação de profundidade. A informação de profundidade pode incluir informação sobre o tamanho da TU porque indica o número da divisão e/ou o grau da TU.
[0124]A informação (por exemplo, um sinalizador de divisão de TU ‘split_transform_flag’) indicando se uma TU correspondente foi dividida em relação a uma TU pode ser transferida para o decodificador. A informação dividida é incluída em todas as TUs que não uma TU de tamanho mínimo. Por exemplo, se o valor do sinalizador que indica se uma TU foi dividida é ‘T, a TU correspondente será dividida em quatro TUs. Se o valor do sinalizador que indica se uma TU foi dividida é Ό’, a TU correspondente não será mais dividida.
[0125]Em uma técnica de codificação / decodificação de compressão de imagem existente, um codificador gera um bloco de predição (ou um bloco de processamento atual) de um bloco atual por predição inter ou predição intra e subtrai o bloco de predição de uma imagem original (ou imagem de entrada) (ou bloco
Petição 870190065456, de 11/07/2019, pág. 28/70
22/48 residual). 0 codificador executa uma transformada para o sinal residual gerado, quantifica o sinal residual transformado, e executa a codificação de entropia para um coeficiente quantizado. O decodificador recebe um sinal emitido a partir do codificador e executa a decodificação de entropia para o sinal. O decodificador gera um sinal residual executando a desquantização e uma transformada inversa para o sinal decodificado de entropia. Além disso, o decodificador gera o bloco de predição do bloco atual e reconstrói o bloco atual somando o sinal residual.
[0126]Ou seja, na técnica de codificação / decodificação de compressão de imagem existente, o codificador executa uma transformada primária (ou uma transformada de núcleo) para o sinal de uma região de pixel para gerar um sinal do domínio de transformada e executa quantização para o sinal do domínio de transformada. No entanto, se o sinal do domínio de transformada for transformado (ou seja, uma transformada secundária for executada) no sinal do domínio de transformada, o desempenho de compressão poderá ser aprimorado ainda mais em comparação com a técnica existente e a quantidade de dados de sinal residual sinalizados para o decodificador pode ser reduzida.
[0127]A presente invenção propõe um método para dimensionar eficientemente o tamanho de um núcleo de transformada usado para tal transformada secundária.
[0128]Além disso, a presente invenção propõe um método para executar a transformada secundária usando o núcleo de transformada selecionado de forma adaptativa de acordo com o tamanho do bloco.
[0129]Além disso, a presente invenção fornece um método para selecionar de forma adaptativa o núcleo adaptado para a transformada secundária, transmitindo o tamanho do núcleo de transformada.
[0130]Além disso, a presente invenção fornece um método para determinar se deve aplicar a transformada secundária ou uma faixa de aplicação usando o sinal
Petição 870190065456, de 11/07/2019, pág. 29/70
23/48 residual.
[0131]Além disso, a presente invenção fornece um método para derivar o tamanho do núcleo de transformada aplicado à transformada secundária usando o sinal residual.
[0132]Modalidade 1 [0133]Em uma modalidade da presente invenção, o codificador / decodificador pode selecionar de forma adaptativa o tamanho do núcleo de transformada a ser usado para a transformada secundária de acordo com o tamanho do bloco de processamento e executar a transformada secundária usando o núcleo de transformada selecionado.
[0134]Aqui, o bloco de processamento pode se referir a uma unidade (ou bloco) na qual um processo de processamento de codificação / decodificação tal como predição, transformada e/ou quantização é executado e pode ser chamado como o bloco, a unidade de processamento, e similares para conveniência de descrição. Além disso, quando o bloco de processamento é usado como uma unidade na qual o processo de transformada é executado, o bloco de processamento pode ser chamado de o bloco de codificação, a unidade de codificação, o bloco de transformada, a unidade de transformada, etc.
[0135]De acordo com a modalidade, o codificador pode executar a transformada primária e então executar a transformada secundária para o sinal residual primariamente transformado antes de executar a quantização. Neste caso, o decodificador pode executar a desquantização para o sinal residual recebido a partir do codificador e executar a transformada secundária antes de executar a transformada inversa primária para o sinal residual desquantizado.
[0136]Em uma técnica de compressão de imagem na qual a transformada é executada em vários tamanhos de bloco, como uma estrutura Quadtree mais Binarytree (QTBT), o codificador / decodificador pode aplicar a transformada
Petição 870190065456, de 11/07/2019, pág. 30/70
24/48 secundária usando um núcleo de transformada secundária (ou transformada secundária) adequado para o tamanho do bloco.
[0137]A Figura 5 é um diagrama para descrever um método para determinar um tamanho de um núcleo de transformada utilizado para transformada secundária com base no tamanho de um bloco como uma modalidade à qual a presente invenção é aplicada.
[0138]O método para determinar o tamanho do núcleo de transformada com base no tamanho do bloco descrito na presente invenção pode ser aplicado tanto ao codificador quanto ao decodificador e é descrito com base no decodificador para conveniência de descrição.
[0139]Com referência à Figura 5, um caso em que uma transformada não separável é aplicada para a transformada secundária é assumida.
[0140]O decodificador extrai o coeficiente de transformada quantizado a partir do fluxo de bits recebido a partir do codificador e executa a desquantização para o coeficiente de transformada quantizado extraído (S501). Neste caso, o decodificador pode executar a decodificação de entropia para o fluxo de bits recebido a partir do codificador de modo a extrair o coeficiente de transformada quantizado.
[0141]O decodificador determina o tamanho do núcleo de transformada secundária aplicado ao bloco atual usando o tamanho (isto é, uma largura e uma altura do bloco atual) do bloco atual (S502). Por exemplo, o decodificador pode determinar o núcleo de transformada secundária determinado de acordo com o tamanho do bloco atual (ou mapeado para o tamanho do bloco atual) entre os núcleos de transformada secundária predeterminados com tamanhos de 4 χ 4, 8 χ 8, 16 χ 16 32 χ 32 e 64 χ
64.
[0142]Por exemplo, quando a largura ou a altura do bloco atual é menor do que 8, o decodificador pode executar a transformada secundária usando o núcleo de transformada secundária tendo o tamanho de 4 x 4 para o bloco atual. Ao contrário,
Petição 870190065456, de 11/07/2019, pág. 31/70
25/48 quando a largura ou a altura do bloco atual é igual ou maior do que 8, o decodificador pode executar a transformada secundária usando o núcleo de transformada secundário com o tamanho de 8 x 8.
[0143]O decodificador executa a transformada inversa secundária para o bloco de transformada desquantizado usando o núcleo de transformada secundária determinado na etapa S502 (S503).
[0144]O bloco de transformada desquantizado representa um arranjo 2D do coeficiente de transformada desquantizado extraído na etapa S501 acima.
[0145]Além disso, quando o tamanho do núcleo de transformada inversa secundária aplicado ao bloco atual é menor do que o tamanho do bloco atual, o decodificador pode executar a transformada inversa secundária somente para uma região superior esquerda (isto é, um domínio da frequência mais baixa) do bloco atual, particionar o bloco atual em sub-blocos de uma unidade do tamanho do núcleo de transformada inversa secundária, e aplicar a transformada inversa secundária em bits do sub-bloco. Em outras palavras, o decodificador pode aplicar a transformada inversa secundária somente à região superior esquerda do tamanho do núcleo de transformada inversa secundária no bloco atual ou aplicar a transformada inversa secundária a todo o bloco atual em unidades do tamanho do núcleo de transformada inversa secundária.
[0146]O decodificador pode gerar o bloco residual do bloco atual, executando transformada inversa primária para o bloco atual que é submetido à transformada inversa secundária.
[0147]As Figuras 6 e 7 são diagramas para descrever um método para determinar um tamanho de um núcleo de transformada utilizado para transformada secundária com base em uma largura e altura de um bloco como uma modalidade à qual a presente invenção é aplicada.
[0148]Com relação às Figuras 6 e 7, o caso em que a transformada não
Petição 870190065456, de 11/07/2019, pág. 32/70
26/48 separável é aplicada para a transformada secundária é assumido.
[0149]O decodificador extrai o coeficiente de transformada quantizado a partir do fluxo de bits recebido a partir do codificador e executa a desquantização para o coeficiente de transformada quantizado extraído (S601 e S701). Neste caso, o decodificador pode executar a decodificação de entropia para o fluxo de bits recebido a partir do codificador de modo a extrair o coeficiente de transformada quantizado.
[0150]O decodificador determina o tamanho do núcleo de transformada secundária aplicado a uma direção horizontal do bloco atual usando a largura do bloco atual (S602 e S702). Além disso, o decodificador determina o tamanho do núcleo de transformada secundária aplicado a uma direção vertical do bloco atual usando a altura do bloco atual (S603 e S703). Por exemplo, o decodificador pode determinar cada núcleo de transformada secundária determinado de acordo com a largura ou a altura do bloco atual (ou mapeado para a largura ou a altura do bloco atual) entre os núcleos de transformada secundária predeterminados com tamanhos de 4, 8, 16 32 e 64.
[0151]Aqui, a Figura 6 ilustra um caso em que o núcleo de transformada aplicado à direção horizontal e o núcleo de transformada aplicado à direção vertical não são distinguidos e a Figura 7 ilustra um caso em que o núcleo de transformada aplicado à direção horizontal e o núcleo de transformada aplicado à direção vertical são distinguidos.
[0152]O decodificador executa a transformada inversa secundária para o bloco de transformada desquantizado usando o núcleo de transformada secundária determinado nas etapas S602, S603, S702 e S703 (S604 e S704).
[0153]Além disso, quando o tamanho do núcleo de transformada inversa secundária aplicado ao bloco atual é menor do que a largura ou a altura do bloco atual, o decodificador pode aplicar a transformada inversa secundária somente para a região superior esquerda (isto é, o domínio de frequência mais baixa) do bloco atual e
Petição 870190065456, de 11/07/2019, pág. 33/70
27/48 particionar a largura ou a altura do bloco atual em unidades de tamanho do núcleo de transformada inversa secundária e executar a transformada inversa secundária para os blocos particionados.
[0154]O decodificador pode gerar o bloco residual do bloco atual, executando a transformada inversa primária para o bloco de transformada que é submetido à transformada inversa primária.
[01551Modalidade 2 [0156]Em uma modalidade da presente invenção, o codificador pode selecionar e forma adaptativa o tamanho do núcleo de transformada aplicado ao bloco de processamento e transmitir a informação de tamanho do núcleo de transformada para o decodificador.
[0157]No exemplo da Modalidade 1 descrita acima, quando o tamanho do bloco atual é grande, um núcleo de transformada de um tamanho relativamente maior pode ser selecionado. No entanto, mesmo que o tamanho do bloco atual seja relativamente maior, aplicar um núcleo de transformada menor pode ser vantajoso em termos do desempenho de compressão. Consequentemente, os núcleos de transformada com vários tamanhos podem ser aplicados sinalizando a informação de núcleo tendo um tamanho otimizado para o bloco atual ser sinalizado para o decodificador independentemente do tamanho do bloco atual, aumentando assim o desempenho de compressão.
[0158]A Figura 8 é um diagrama para descrever um método para executar a transformada secundária utilizando uma sintaxe que indica o tamanho do núcleo de transformada utilizado para a transformada secundária como uma modalidade à qual a presente invenção é aplicada.
[0159]O método para determinar o tamanho do núcleo de transformada descrito na presente invenção pode ser aplicado tanto ao codificador quanto ao decodificador e é descrito com base no decodificador para conveniência de descrição.
Petição 870190065456, de 11/07/2019, pág. 34/70
28/48 [0160]Com referência à Figura 8, o caso em que a transformada não separável é aplicada para transformada secundária é assumido.
[0161 ]A etapa S801 pode ser executada de forma semelhante à etapa S501 da Figura 5.
[0162]O decodificador determina o tamanho do núcleo de transformada aplicado ao bloco atual usando a sintaxe que indica o tamanho do núcleo de transformada usado para a transformada secundária (S802). Neste caso, uma etapa de análise de uma sintaxe com um tamanho de núcleo de transformada a partir do fluxo de bits pode ser adicionada antes da etapa S802.
[0163]A etapa S803 pode ser executada de forma semelhante à etapa S503 da Figura 5.
[0164]Além disso, mesmo quando uma transformada separável é aplicada à transformada secundária como o caso ilustrado nas Figuras 6 e 7 acima, o método proposto na modalidade pode ser aplicado em um método que é o mesmo que o método descrito na Figura 8.
[Q165]Modalidade 2-1 [0166]Na modalidade da presente invenção, um método para transmitir o tamanho do núcleo de transformada aplicado à transformada secundária em um método de compressão de uma estrutura de bloco na qual o bloco de transformada e o bloco de codificação são iguais um ao outro é proposto.
[0167]Por exemplo, no caso de uma estrutura QTBT na qual a predição, a transformada e a quantização são executadas na mesma unidade de bloco (bloco de codificação e unidade de codificação), particionamento adicional no bloco de transformada (ou unidade de transformada) em um procedimento de transformada pode não ser executado. Neste caso, o codificador pode selecionar o tamanho do núcleo de transformada secundária aplicado à transformada secundária e sinalizar para o decodificador o tamanho selecionado do núcleo de transformada secundária
Petição 870190065456, de 11/07/2019, pág. 35/70
29/48 em unidades do bloco de codificação ou um nível superior (por exemplo, sequência, imagem, fatia, ou CTU).
[0168]A Figura 9 é um fluxograma que mostra um método para determinar um tamanho de um núcleo de transformada utilizado para transformada secundária como uma modalidade à qual a presente invenção é aplicada.
[0169]Com referência à Figura 9, assume-se que o método para determinar o tamanho do núcleo de transformada descrito na modalidade é aplicado à estrutura de blocos na qual o bloco de transformada e o bloco de codificação são determinados como sendo iguais um ao outro.
[0170]O decodificador verifica se a largura e a altura do bloco atual são maiores do que 4 (S901).
[0171]Quando a largura e a altura do bloco atual são maiores do que 4 como um resultado da determinação na etapa S901, o decodificador analisa a sintaxe indicando o tamanho do núcleo de transformada secundária (S902) e verifica o tamanho do núcleo de transformada secundária aplicado ao bloco atual (S903). Por exemplo, quando uma transformada secundária não separável (NSST) é aplicada, a sintaxe pode ser uma sintaxe indicando o tamanho do núcleo de NSST.
[0172]Quando a sintaxe indica um núcleo 4x4 como um resultado da verificação na etapa S903 ou se a largura ou a altura do bloco atual é igual ou menor do que 4 como o resultado da determinação na etapa S901, o decodificador aplica a transformada secundária para o bloco atual usando o núcleo de transformada com o tamanho 4x4 (S904).
[0173]Como o resultado da verificação na etapa S903, quando a sintaxe indica o núcleo 8 x 8, o decodificador aplica a transformada secundária ao bloco atual usando o núcleo de transformada tendo o tamanho 8x8 (S905).
[0174]Ou seja, mesmo que a largura e a altura do bloco atual sejam maiores do que 4, se a sintaxe transmitida a partir do codificador indica o tamanho de 4 χ 4, o
Petição 870190065456, de 11/07/2019, pág. 36/70
30/48 decodificador pode executar a transformada secundária para a região de bloco tendo o tamanho 4 x 4, a região de bloco tendo o tamanho 8 x 8, ou uma região inteira do bloco atual usando o núcleo de transformada secundária tendo o tamanho 4x4.
[0175]Na Figura 9, o método é descrito assumindo que os núcleos de transformada de tamanho 4 χ 4 e tamanho 8x8 são aplicados para a transformada secundária, mas a presente invenção não está limitada a estes. Ou seja, pode ser aplicado um método proposto na modalidade utilizando os núcleos de transformada tendo vários tamanhos, bem como os núcleos de transformada de tamanho 4 x 4 e tamanho 8x8. Além disso, o bloco atual é maior do que um bloco tendo um tamanho mínimo ao qual a transformada secundária é aplicada, o decodificador pode determinar o tamanho do núcleo de transformada secundária aplicado ao bloco atual com base na informação de sintaxe transmitida a partir do codificador.
[0176]Em uma modalidade, a sintaxe indicando o núcleo de transformada secundária pode ser transmitida a partir do codificador para o decodificador em unidades da sequência, da imagem, da fatia, da unidade de árvore de codificação (CTU), ou o bloco de codificação.
[Q177]Modalidade 2-2 [0178]Na modalidade da presente invenção, um método para transmitir o tamanho do núcleo de transformada aplicado à transformada secundária em um método de compressão de uma estrutura de bloco na qual o bloco de transformada e o bloco de codificação não são iguais um ao outro é proposto.
[0179]O método proposto na modalidade pode ser aplicado a uma estrutura de bloco na qual o bloco de transformada e o bloco de codificação podem ser determinados como sendo diferentes um do outro, ao contrário do método na Modalidade 2-1 descrita acima. Por exemplo, o bloco de transformada (ou unidade de transformada) representando a unidade na qual a transformada e a quantização são executadas pode ser um bloco que é particionado a partir do bloco de codificação.
Petição 870190065456, de 11/07/2019, pág. 37/70
31/48 [0180]Em uma modalidade, o codificador pode transmitir para o decodificador uma sintaxe indicando o tamanho do núcleo de transformada em unidades do bloco de codificação. Nesse caso, o decodificador pode selecionar o tamanho do núcleo com base na sintaxe transmitida a partir do codificador em unidades do bloco de transformada no bloco de codificação e aplicar a transformada secundária. Nesse caso, o decodificador pode executar a transformada secundária usando o núcleo de transformada secundária de tamanho mínimo, independentemente da sintaxe recebida a partir do codificador, quando o bloco de transformada tem o mesmo tamanho do bloco de tamanho mínimo ao qual a transformada secundária é aplicada.
[0181]A Figura 10 é um fluxograma que mostra um método para determinar um tamanho de um núcleo de transformada utilizado para transformada secundária como uma modalidade à qual a presente invenção é aplicada.
[0182]Com referência à Figura 10, assume-se que o método de determinar o tamanho do núcleo de transformada descrito na modalidade é aplicado à estrutura de bloco na qual o bloco de transformada e o bloco de codificação são determinados individualmente (ou hierarquicamente). Além disso, supõe-se que a sintaxe indicando o núcleo de transformada secundária é transmitida em unidades do bloco de codificação.
[0183]O decodificador verifica se a largura e a altura do bloco de codificação atual são maiores do que 4 (S1001).
[0184]Quando a largura e a altura do bloco de codificação atual são maiores do que 4 como o resultado da determinação na etapa S1001, o decodificador analisa a sintaxe indicando o tamanho do núcleo de transformada secundária (S1002).
[0185]Posteriormente, o decodificador pode determinar o tamanho do núcleo de transformada secundária durante o ciclo em unidades do bloco de transformada (ou unidade de transformada) no bloco de codificação atual.
[0186]Especificamente, o decodificador verifica se o bloco de transformada
Petição 870190065456, de 11/07/2019, pág. 38/70
32/48 atual no bloco de codificação atual é um último bloco de transformada (S1003).
[0187]Como o resultado da verificação na etapa S1003, o decodificador verifica se a largura e a altura do bloco de transformada atual são maiores do que 4 até que o bloco de transformada atual se torne o último bloco de transformada (S1004). Quando a largura e a altura do bloco atual são maiores do que 4 como um resultado da determinação na etapa S1004, o decodificador verifica o núcleo de transformada secundária aplicado ao bloco de transformada atual usando a sintaxe analisada na etapa S1002 (S1005). Por exemplo, quando a transformada secundária não separável (NSST) é aplicada, a sintaxe pode ser a sintaxe indicando o tamanho do núcleo de NSST.
[0188]Quando a sintaxe indica o núcleo 4x4 como o resultado da verificação na etapa S1005, quando a largura ou a altura do bloco de codificação atual é igual ou menor do que 4 como o resultado da determinação na etapa S1001, ou quando a largura ou a altura do bloco de transformada atual é igual ou menor do que 4 como o resultado da determinação na etapa S1004, o decodificador aplica a transformada secundária ao bloco atual usando o núcleo de transformada tendo o tamanho 4x4 (S1006).
[0189]Como o resultado da verificação na etapa S1005, quando a sintaxe indica o núcleo 8 x 8, o decodificador aplica a transformada secundária ao bloco de transformada atual usando o núcleo de transformada com o tamanho 8x8 (S1007).
[0190]Qu seja, o decodificador pode analisar a sintaxe indicando o núcleo de transformada em unidades do bloco de codificação. O decodificador pode então determinar o tamanho do núcleo de transformada secundária usando a sintaxe analisada em unidades do bloco de transformada dentro do bloco de codificação. Ou seja, mesmo quando a largura e a altura do bloco atual forem maiores do que 4, se a sintaxe transmitida a partir do codificador indicar o tamanho 4 x 4, o decodificador pode executar a transformada secundária para a região de bloco com tamanho 4x4,
Petição 870190065456, de 11/07/2019, pág. 39/70
33/48 a região de bloco tendo o tamanho 8 x 8, ou uma região inteira do bloco de transformada atual usando o núcleo de transformada secundária tendo o tamanho 4 χ 4.
[0191]Na Figura 10, o método é descrito assumindo que os núcleos de transformada de tamanho 4 χ 4 e tamanho 8x8 são aplicados à transformada secundária, mas a presente invenção não está limitada a estes. Ou seja, pode ser aplicado um método proposto na modalidade utilizando os núcleos de transformada tendo vários tamanhos, bem como os núcleos de transformada de tamanho 4 x 4 e tamanho 8x8. Além disso, o bloco de transformada atual é maior do que um bloco tendo um tamanho mínimo ao qual a transformada secundária é aplicada, o decodificador pode determinar o tamanho do núcleo de transformada secundária aplicado ao bloco de transformada atual com base na informação de sintaxe transmitida a partir do codificador.
[0192]Em uma modalidade, a sintaxe indicando o núcleo de transformada secundária pode ser transmitida a partir do codificador para o decodificador em unidades da sequência, da imagem, da fatia, da CTU ou do bloco de codificação além da unidade do bloco de codificação.
[0193]Além disso, em uma modalidade da presente invenção, quando uma estrutura de bloco na qual o componente luma e o componente chroma são diferentes é fornecida, o codificador pode sinalizar a informação de tamanho do núcleo de transformada para o decodificador como os exemplos de Tabelas 1 a 4 abaixo.
[0194]Nos exemplos das Tabelas 1 a 4 abaixo, assume-se que as estruturas de blocos do componente luma (ou de um canal luma) e do componente chroma (ou de um canal chroma) são determinadas como diferentes no caso da fatia I e as estruturas de blocos do componente luma e do componente chroma são determinadas como iguais no caso da fatia B. No caso da fatia B, uma vez que as estruturas de bloco do componente luma e do componente chroma são determinadas como iguais,
Petição 870190065456, de 11/07/2019, pág. 40/70
34/48 o codificador pode transmitir para o decodificador um sinalizador indicando o tamanho do núcleo de transformada apenas para o componente luma. Além disso, assume-se que o tamanho do bloco atual é maior do que o tamanho do bloco 8x8. Quando o tamanho do bloco atual não é maior do que o bloco 4 x 4 ou quando o bloco atual é o bloco de tamanho mínimo, o núcleo de transformada tendo o tamanho 4x4 pode ser aplicado ao bloco atual.
[0195][ Tabela 1 ]
Fal ia 1 Fatia B
Luma Chroma Luminância Chroma
Sinalizador O X O
Núcleo 4x4 O X O X
Núcleo 8x8 O O O O
[0196]Com relação à Tabela 1, na fatia I, o codificador pode não sinalizar ao decodificador um sinalizador indicando o tamanho do núcleo de transformada para o componente chroma. Neste caso, o codificador / decodificador pode aplicar o núcleo de transformada de tamanho 8 x 8 a um bloco de componente chroma tendo o tamanho 8 x 8 ou mais, independentemente da informação de sinalizador do componente luma Mesmo para o componente chroma da fatia B, o codificador / decodificador pode aplicar o núcleo de transformada de tamanho 8 x 8 ao bloco de componente chroma tendo o tamanho 8 x 8 ou mais, independentemente da informação de sinalizador do componente luma.
[0197][Tabela2 ]
Fatia 1 Fatia B
Luma Chroma Luma Chroma
Sinalizador O X O
Núcleo 4x4 O X O O
Núcleo 8x8 O O O O
[0198]Com relação à Tabela 2, na fatia I, o codificador pode não sinalizar ao decodificador o sinalizador que indica o tamanho do núcleo de transformada para o componente chroma. Neste caso, o codificador / decodificador pode aplicar o núcleo de transformada de tamanho 8 x 8 a um bloco de componente chroma tendo o
Petição 870190065456, de 11/07/2019, pág. 41/70
35/48 tamanho 8 χ 8 ou mais, independentemente da informação de sinalizador do componente luma. Entretanto, no caso da fatia B, uma vez que as estruturas de bloco podem ser determinadas como iguais, o codificador / decodificador pode aplicar o núcleo de transformada de tamanho 4 x 4 ou 8 x 8 ao bloco de componente chroma tendo o tamanho 8 x 8 ou mais de acordo com a informação de sinalizador do componente luma.
[0199][ Tabela 3 ]
Fal ia 1 Fatia B
Luma Chroma Luma Chroma
Sinalizador O O O
Núcleo 4x4 O O O O
Núcleo 8x8 O O O O
[0200]Com relação à Tabela 3, na fatia I, o codificador pode sinalizar ao decodificador o sinalizador indicando o tamanho do núcleo de transformada para o componente chroma. Nesse caso, o codificador / decodificador pode determinar o tamanho do núcleo de transformada e aplicar a transformada secundária usando a informação sinalizada para cada componente. Entretanto, no caso da fatia B, uma vez que as estruturas de bloco podem ser determinadas como iguais, o codificador / decodificador pode aplicar o núcleo de transformada de tamanho 4 x 4 ou 8 x 8 ao bloco componente chroma com o tamanho 8 x 8 ou mais de acordo com a informação de sinalizador do componente luma.
[0201 ][ Tabela 4]
Fal ia 1 Fatia B
Luma Chroma Luma Chroma
Sinalizador O X O
Núcleo 4x4 O O O O
Núcleo 8x8 O 0 O O
[0202]Com relação à Tabela 4, na fatia I, o codificador pode não sinalizar ao decodificador o sinalizador que indica o tamanho do núcleo de transformada para o componente chroma. Neste caso, o codificador / decodificador pode aplicar o núcleo de transformada de tamanho 4 x 4 ou 8 x 8 ao bloco componente chroma tendo o
Petição 870190065456, de 11/07/2019, pág. 42/70
36/48 tamanho 8 χ 8 ou mais de acordo com a informação de sinalizador do componente luma. Além disso, no caso da fatia B, uma vez que as estruturas de bloco podem ser determinadas como iguais, o codificador / decodificador pode aplicar o núcleo de transformada de tamanho 4 x 4 ou 8 x 8 ao bloco componente chroma com tamanho 8 x 8 ou mais de acordo com a informação de sinalização do componente luma.
[0203]Modalidade 3 [0204]Em uma modalidade da presente invenção, o codificador/decodificador pode determinar se deve aplicar a transformada secundária ou selecionar de forma adaptativa o tamanho do núcleo de transformada usando características do sinal residual da sinalização de bloco na aplicação da transformada secundária. Na modalidade 2 descrita acima, o decodificador pode receber a partir do codificador a sintaxe que indica o tamanho do núcleo de transformada, enquanto na modalidade, o decodificador pode derivar o tamanho do núcleo de transformada utilizando as características no bloco sem receber uma sintaxe adicional.
[0205]Modalidade 3-1 [0206]Em uma modalidade da presente invenção, o codificador/decodificador pode determinar se deve aplicar a transformada secundária considerando as características do sinal residual no bloco. Por exemplo, o codificador / decodificador pode determinar se deve aplicar a transformada secundária usando um grau de distribuição do sinal residual, o número de sinais residuais, ou o tamanho do sinal residual.
[0207]É possível salvar os bits usados no sinalizador para indicar a transformada secundária e melhorar o desempenho da compressão, determinando se deve aplicar a transformada secundária com base no sinal residual.
[0208]A seguir, a presente invenção será descrita assumindo que a transformada secundária não separável (NSST) é usada como transformada secundária, mas a presente invenção não está limitada a ela. Outras transformações
Petição 870190065456, de 11/07/2019, pág. 43/70
37/48 conhecidas podem ser aplicadas como a transformada secundária.
[0209]A Figura 11 é um diagrama que ilustra um método para determinar se deve aplicar uma transformada secundária utilizando um sinal residual de acordo com uma modalidade da presente invenção.
[0210]Com referência à Figura 11, assume-se que o tamanho do bloco atual é 16 x 16 e a NSST é aplicada ao bloco 8 χ 8 1101 na extremidade superior esquerda.
[0211]Conforme ilustrado na Figura 11, se o sinal residual não for distribuído no bloco superior esquerdo 8 χ 8 1101, não há diferença entre o caso de aplicar a NSST e o caso de não aplicar a NSST e um bit desnecessário pode ser usado para sinalizar se deve aplicar a NSST ou o tamanho do núcleo.
[0212]Portanto, em uma modalidade da presente invenção, um método para determinar se deve aplicar a transformada secundária com base na distribuição do sinal residual é proposto para resolver esse problema.
[0213]O codificador / decodificador pode determinar se deve aplicar a transformada secundária de acordo com se o sinal residual é distribuído na região superior esquerda 8 x 8 1101 do bloco atual.
[0214]Em uma modalidade, o codificador / decodificador pode não executar a transformada secundária quando não há sinal residual na região superior esquerda 8 x 8 1101 à qual a transformada secundária é aplicada. Em outras palavras, a transformada secundária pode ser aplicada à região correspondente quando existem um ou mais sinais residuais na região superior esquerda 8x81101.
[0215]Alternativamente, o codificador / decodificador pode aplicar a transformada secundária quando o número de sinais residuais que existem na região superior esquerda 8 x 8 1101 é maior do que um limite específico. Quando o número de sinais residuais é igual ou menor do que o limite específico, o codificador / decodificador pode não aplicar a transformada secundária.
[Q216]Modalidade 3-2
Petição 870190065456, de 11/07/2019, pág. 44/70
38/48 [0217]Em uma modalidade da presente invenção, o codificador/decodificador pode determinar a faixa de aplicação da transformada secundária considerando as características do sinal residual no bloco. Quando a transformada secundária é aplicada ao bloco inteiro, quanto maior o tamanho do bloco, maior a complexidade e o desempenho de compressão pode ser degradado.
[0218]Consequentemente, a fim de resolver esse problema, a presente invenção propõe um método para determinar se deve aplicar a transformada secundária em unidades de sub-regiões no bloco. De acordo com a modalidade da presente invenção, a complexidade pode ser reduzida aplicando a transformada secundária a um bloco no qual um ou mais sinais residuais ou um número específico ou mais de sinais residuais existem.
[0219]As Figuras 12 e 13 são diagramas que ilustram um método para determinar se deve aplicar a transformada secundária utilizando um sinal residual de acordo com uma modalidade da presente invenção.
[0220]Com referência à Figura 12, o codificador / decodificador pode particionar o bloco atual (ou o bloco residual atual) em sub-blocos (ou sub-regiões) e determinar se deve aplicar a transformada secundária com base nos sinais residuais em unidades dos sub-blocos particionados.
[0221 ]O codificador pode ou não transmitir o sinalizador indicando se deve aplicar a transformada secundária ao decodificador ou vice-versa. Quando o sinalizador que indica se deve aplicar a transformada secundária é sinalizado pelo codificador, o decodificador pode determinar se deve aplicar a transformada secundária pelo sinalizador recebido. Além disso, quando o sinalizador recebido indica a aplicação da transformada secundária, o decodificador pode particionar o bloco atual em uma pluralidade de sub-blocos e determinar se deve aplicar a transformada secundária em unidades do sub-bloco com base no sinal residual em cada sub-bloco.
[0222]Quando o sinalizador que indica se deve aplicar a transformada
Petição 870190065456, de 11/07/2019, pág. 45/70
39/48 secundária não é sinalizado pelo codificador, o decodificador pode particionar o bloco atual na pluralidade de sub-blocos e determinar se deve aplicar a transformada secundária em unidades do sub-bloco com base no sinal residual em cada sub-bloco.
[0223]Quando não há sinal residual no sub-bloco particionado, o codificador/ decodificador pode determinar que a transformada secundária não é aplicada e quando há um ou mais sinais residuais no sub-bloco particionado, o codificador / decodificador pode determinar a aplicação da transformada secundária.
[0224]Por exemplo, quando o tamanho do bloco atual é 16 x 16, o codificador / decodificador pode particionar o bloco atual em sub-blocos de tamanho 8x8. Quando não há sinal residual em um sub-bloco superior esquerdo 1201 como ilustrado na Figura 12, o codificador/ decodificador pode não aplicara transformada secundária ao sub-bloco superior esquerdo 1201.
[0225]Ao contrário, como ilustrado na Figura 12, quando existe o sinal residual em um sub-bloco superior direito 1202, um sub-bloco inferior esquerdo 1203, e um sub-bloco inferior direito 1204, o codificador / decodificador pode aplicar a transformada secundária aos sub-blocos correspondentes 1202, 1203 e 1204.
[0226]Com referência à Figura 13, quando houver sinais residuais de um número específico (ou limite) ou mais no sub-bloco particionado, o codificador / decodificador pode determinar que a transformada secundária não é aplicada e quando houver sinais residuais de um número específico ou mais no sub-bloco particionado, o codificador / decodificador pode determinar para aplicar a transformada secundária.
[0227]Por exemplo, quando o tamanho do bloco atual é 16 x 16, o codificador / decodificador pode particionar o bloco atual em sub-blocos de tamanho 8x8. Quando um número específico ou mais de sinais residuais não existe no sub-bloco superior esquerdo, no sub-bloco superior direito e no sub-bloco inferior esquerdo como ilustrado na Figura 13, o codificador / decodificador pode não aplicar a
Petição 870190065456, de 11/07/2019, pág. 46/70
40/48 transformada secundária no sub-bloco superior esquerdo, no sub-bloco superior direito e no sub-bloco inferior esquerdo. Aqui, um número específico representando um limite para determinar se deve aplicar a transformada secundária pode ter um valor predeterminado. Na modalidade, assume-se que o número específico é 2.
[0228]Ao contrário, quando existe um número específico ou mais de sinais residuais em um sub-bloco inferior direito 1301 ilustrado na Figura 13, o codificador/ decodificador pode aplicar a transformada secundária ao sub-bloco inferior direito 1301.
[Q229]Modalidade 3-3 [0230]Em uma modalidade da presente invenção, o codificador/decodificador pode determinar o tamanho do núcleo de transformada secundária considerando as características do sinal residual no bloco. Quando a transformada secundária é executada usando um núcleo de transformada secundária de um tamanho predeterminado, independentemente de uma faixa de distribuição do sinal residual, a transformada secundária pode ser aplicada a uma região desnecessária quando o sinal residual é distribuído apenas em uma região relativamente pequena, e como um resultado, a eficiência de compressão pode ser reduzida.
[0231 ]O codificador / decodificador pode determinar de forma adaptativa o tamanho do núcleo de transformada secundária com base no grau de distribuição do sinal residual.
[0232]A Figura 14 é um diagrama que ilustra um método para determinar um tamanho de um núcleo de transformada secundária utilizando um sinal residual de acordo com uma modalidade da presente invenção.
[0233]Com referência à Figura 14, o codificador / decodificador pode verificar a região de distribuição do sinal residual no bloco atual. Por exemplo, o codificador/ decodificador pode verificar se o sinal residual existe para cada tamanho aplicável do núcleo de transformada secundária. O codificador / decodificador pode determinar o
Petição 870190065456, de 11/07/2019, pág. 47/70
41/48 tamanho mínimo do núcleo de transformada, que inclui a região existente do sinal residual entre os núcleos de transformada aplicáveis, conforme o núcleo de transformada aplicado à transformada secundária do bloco atual.
[0234]Por exemplo, quando os núcleos de transformada de tamanho 4 x 4 e de tamanho 8x8 existem como o núcleo de transformada secundária aplicável e o sinal residual existe apenas na região de tamanho 4x4 como ilustrado na Figura 14, o codificador / decodificador pode determinar o tamanho do núcleo de transformada aplicado à transformada secundária do bloco atual como o tamanho 4x4.
[0235]Em relação às modalidades descritas acima, as respectivas modalidades podem ser aplicadas independentemente e várias modalidades podem ser utilizadas em combinação.
[0236]A Figura 15 é um diagrama que ilustra um método de decodificação de um sinal de vídeo de acordo com uma modalidade da presente invenção.
[0237]A seguir, o decodificador será primeiramente descrito para conveniência de descrição na descrição da modalidade, mas o método de decodificação do sinal de vídeo de acordo com a presente invenção pode ser executado no codificador e no decodificador da mesma maneira.
[0238]O decodificador gera um bloco de transformada quantizado executando a decodificação de entropia para o sinal de vídeo (S1501). Especificamente, o decodificador pode extrair coeficientes de transformada quantizados por decodificação de entropia do fluxo de bits recebido a partir do codificador para extrair os coeficientes de transformada quantizados. Além disso, o decodificador pode gerar os blocos de transformada quantizados de um arranjo 2D, dispondo os coeficientes de transformada quantizados de acordo com uma ordem de varredura predeterminada.
[0239]O decodificador gera um bloco de transformada desquantizado executando a desquantização para o bloco de transformada quantizado (S1502).
Petição 870190065456, de 11/07/2019, pág. 48/70
42/48 [0240]0 decodificador determina se deve aplicar a transformada inversa secundária com base na informação relacionada a um coeficiente não nulo no bloco de transformada desquantizado (S1503).
[0241]Como descrito acima na Figura 11, a etapa S1503 pode incluir verificar se existem um ou mais coeficientes não nulos na região específica superior esquerda do bloco atual (isto é, o bloco de transformada desquantizado). Quando um ou mais coeficientes não nulos existem na região específica, a transformada inversa secundária pode ser aplicada ao bloco atual.
[0242]Além disso, a etapa S1503 pode incluir verificar o número de coeficientes não nulos na região específica superior esquerda do bloco atual. Quando o número de coeficientes não nulos na região específica excede um limite específico, o decodificador pode aplicar a transformada inversa secundária ao bloco atual.
[0243]Além disso, como descrito nas Figuras 12 e 13, o decodificador pode particionar o bloco atual em sub-blocos de um tamanho específico e determinar se deve aplicar a transformada inversa secundária em unidades dos sub-blocos particionados. Neste caso, o decodificador pode verificar se há um ou mais coeficientes não nulos em um sub-bloco atual. Como um resultado da verificação, quando um ou mais coeficientes não nulos existem no sub-bloco atual, o decodificador pode aplicar a transformada inversa secundária ao sub-bloco atual.
[0244]Alternativamente, o decodificador pode verificar o número de coeficientes não nulos no sub-bloco atual. Quando o número de coeficientes não nulos na região específica excede um limite específico, o decodificador pode aplicar a transformada inversa secundária ao sub-bloco atual.
[0245]Além disso, como descrito na Figura 14 acima, o decodificador pode determinar o tamanho do núcleo de transformada inversa secundária aplicado ao bloco atual com base na informação relacionada ao coeficiente não nulo no bloco atual. Especificamente, o tamanho do núcleo de transformada inversa secundária
Petição 870190065456, de 11/07/2019, pág. 49/70
43/48 pode ser determinado como o tamanho do menor núcleo de transformada inversa secundária dentre os núcleos de transformada inversa secundária incluindo os coeficientes não nulos que existem em uma região com um tamanho específico em um tamanho específico superior esquerdo do bloco atual.
[0246]Além disso, como descrito nas Figuras 8 a 10, quando o tamanho do bloco atual é maior do que o de um bloco predeterminado tendo um tamanho mínimo, o decodificador pode extrair uma sintaxe indicando o tamanho do núcleo de transformada inversa secundária do sinal de vídeo. Além disso, o decodificador pode determinar o tamanho do núcleo de transformada inversa secundária aplicado ao bloco atual com base na sintaxe. A sintaxe que indica o tamanho do núcleo de transformada inversa secundária pode ser transmitida em unidades de uma sequência, uma imagem, uma fatia, um bloco de codificação ou um bloco de transformada.
[0247]O decodificador executa a transformada inversa secundária para o bloco de transformada desquantizado usando o núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado. Por exemplo, a transformada inversa secundária pode ser executada usando qualquer uma de uma transformada discreta de cosseno (DCT), transformada discreta de seno (DST), uma transformada de Karhunen-Loeve, uma transformada baseada em gráfico, uma transformada secundária não separável (NSST).
[0248]Além disso, o decodificador pode gerar o bloco residual executando a transformada inversa primária para o bloco de transformada que é submetido à transformada inversa secundária.
[0249]A Figura 16 é um diagrama que ilustra um aparelho de decodificação de um sinal de vídeo de acordo com uma modalidade da presente invenção.
[0250]Na Figura 16, uma unidade de decodificação de entropia 1601, uma unidade de desquantização 1602, uma unidade de determinação de transformada
Petição 870190065456, de 11/07/2019, pág. 50/70
44/48 inversa secundária 1603 e uma unidade de transformada inversa secundária 1604 são mostradas como blocos separados, respectivamente, mas podem ser implementadas como componentes incluídos no codificador e/ou no decodificador.
[0251 ]Com referência à Figura 16, o aparelho de decodificação implementa as funes, procedimentos e/ou métodos propostos nas Figuras 5 a 15 acima. Especificamente, o aparelho de decodificação pode ser configurado para incluir uma unidade de decodificação de entropia 1602, uma unidade de desquantização 1602, uma unidade de determinação de transformada inversa secundária 1603 e uma unidade de transformada inversa secundária 1604. A unidade de decodificação de entropia 1601 e a unidade de desquantização 1602 podem ser incluídas na unidade de decodificação de entropia 210 (na Figura 2) e na unidade de desquantização 220 (na Figura 2) descrita na Figura 2 acima, respectivamente. Em adição, a unidade de determinação de transformada inversa secundária 1603 e/ou a unidade de transformada inversa secundária 1604 pode ser incluída na unidade de transformada inversa 230 (na Figura 2) descrita na Figura 2.
[0252]A unidade de decodificação de entropia 1601 gera um bloco de transformada quantizado executando a decodificação de entropia para o sinal de vídeo. Especificamente, a unidade de decodificação de entropia 1601 pode extrair coeficientes de transformada quantizados por decodificação de entropia do fluxo de bits recebido a partir do codificador. Além disso, a unidade de decodificação de entropia 1601 pode gerar os blocos de transformada quantizados da matriz 2D, dispondo os coeficientes de transformada quantizados de acordo com uma ordem de varredura predeterminada.
[0253]A unidade de desquantização 1602 gera um bloco de transformada desquantizado executando desquantização para o bloco de transformada quantizado.
[0254]A unidade de determinação de transformada inversa secundária 1603 determina se deve aplicar a transformada inversa secundária com base em
Petição 870190065456, de 11/07/2019, pág. 51/70
45/48 informação relacionada a um coeficiente não nulo no bloco de transformada desquantizado.
[0255]Como descrito acima na Figura 11, a unidade de determinação de transformada inversa secundária 1603 pode verificar se há um ou mais coeficientes não nulos na região específica superior esquerda do bloco corrente (isto é, o bloco de transformada desquantizado). Quando um ou mais coeficientes não nulos existem na região específica, a unidade de determinação de transformada inversa secundária 1603 pode determinar que a transformada inversa secundária é aplicada ao bloco atual.
[0256]Além disso, a unidade de determinação de transformada inversa secundária 1603 pode verificar o número de coeficientes não nulos na região específica superior esquerda do bloco atual. Quando o número de coeficientes não nulos na região específica excede um limite específico, a unidade de determinação de transformada inversa secundária 1603 pode determinar que a transformada inversa secundária é aplicada ao bloco atual.
[0257]Além disso, como descrito acima nas Figuras 12 e 13, a unidade de determinação de transformada inversa secundária 1603 pode particionar o bloco atual em sub-blocos de um tamanho específico e determinar se deve aplicar a transformada inversa secundária em unidades dos sub-blocos particionados. Neste caso, a unidade de determinação de transformada inversa secundária 1603 pode verificar se há um ou mais coeficientes não nulos em um sub-bloco atual. Como o resultado da verificação, quando um ou mais coeficientes não nulos existem no sub-bloco atual, a unidade de determinação de transformada inversa secundária 1603 pode determinar que a transformada inversa secundária é aplicada ao sub-bloco atual.
[0258]Alternativamente, a unidade de determinação de transformada inversa secundária 1603 pode verificar o número de coeficientes não nulos no sub-bloco atual. Quando o número de coeficientes não nulos no sub-bloco atual excede um limite
Petição 870190065456, de 11/07/2019, pág. 52/70
46/48 específico, a unidade de determinação de transformada inversa secundária 1603 pode determinar que a transformada inversa secundária é aplicada ao sub-bloco atual.
[0259]Além disso, como descrito acima na Figura 14, a unidade de determinação de transformada inversa secundária 1603 pode determinar o tamanho do núcleo de transformada inversa secundária aplicado ao bloco atual com base na informação relacionada com o coeficiente não nulo no bloco atual. Especificamente, o tamanho do núcleo de transformada inversa secundário pode ser determinado como o tamanho do menor núcleo de transformada inversa secundária dentre os núcleos de transformada inversa secundária incluindo os coeficientes não nulos que existem em uma região com um tamanho específico em um tamanho específico superior esquerdo do bloco atual.
[0260]Além disso, como descrito nas Figuras 8 a 10, quando o tamanho do bloco atual é maior do que o de um bloco predeterminado tendo um tamanho mínimo, o decodificador pode extrair uma sintaxe indicando o tamanho do núcleo de transformada inversa secundária do sinal de vídeo. Além disso, a unidade de determinação de transformada inversa secundária 1603 pode determinar o tamanho do núcleo de transformada inversa secundária aplicado ao bloco atual com base na sintaxe. A sintaxe que indica o tamanho do núcleo de transformada inversa secundária pode ser transmitida em unidades de uma sequência, uma imagem, uma fatia, um bloco de codificação ou um bloco de transformada.
[0261 ]A unidade de transformada inversa secundária 1604 executa a transformada inversa secundária para o bloco de transformada desquantizado usando o núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado (S1504). Por exemplo, a transformada inversa secundária pode ser executada usando qualquer uma de uma transformada discreta de cosseno (DCT), transformada discreta de seno (DST), uma transformada de Karhunen-Loeve, uma transformada baseada em gráfico, uma transformada secundária não separável
Petição 870190065456, de 11/07/2019, pág. 53/70
47/48 (NSST).
[0262]Além disso, o decodificador pode gerar o bloco residual executando a transformada inversa primária para o bloco de transformada que é submetido à transformada inversa secundária.
[0263]Nas modalidades descritas acima, os componentes e as características da presente invenção são combinados em uma forma predeterminada. Cada componente ou recurso deve ser considerado como uma opção, a menos que expressamente declarado de outra forma. Cada componente ou recurso pode ser implementado para não estar associado a outros componentes ou recursos. Além disso, a modalidade da presente invenção pode ser configurada associando alguns componentes e/ou recursos. A ordem das operações descritas nas modalidades da presente invenção pode ser alterada. Alguns componentes ou recursos de qualquer modalidade podem ser incluídos em outra modalidade ou substituídos pelo componente e recurso correspondente a outra modalidade. É evidente que as reivindicações que não são expressamente citadas nas reivindicações são combinadas para formar uma modalidade ou serem incluídas em uma nova reivindicação por uma emenda após o pedido.
[0264]As modalidades da presente invenção podem ser implementadas por hardware, suporte lógico alterável, software ou combinações dos mesmos. No caso de implementação por hardware, de acordo com a implementação de hardware, a modalidade exemplificativa aqui descrita pode ser implementada usando um ou mais circuitos integrados de aplicação específica (ASICs), processadores de sinal digital (DSPs), dispositivos de processamento de sinal digital (DSPDs), dispositivos lógicos programáveis (PLDs), arranjos de portas programáveis em campo (FPGAs), processadores, controladores, microcontroladores, microprocessadores e similares.
[0265]No caso de implementação por suporte lógico inalterável ou software, a modalidade da presente invenção pode ser implementada na forma de um módulo,
Petição 870190065456, de 11/07/2019, pág. 54/70
48/48 um procedimento, uma função e similares para executar as funções ou operações descritas acima. Um código de software pode ser armazenado na memória e executado pelo processador. A memória pode ser posicionada dentro ou fora do processador e pode transmitir e receber dados para / a partir do processador por vários meios.
[0266]É evidente para os versados na técnica que a presente invenção pode ser incorporada em outras formas específicas sem abandonar as características essenciais da presente invenção. Consequentemente, a descrição detalhada mencionada acima não deve ser interpretada como restritiva em todos os termos e deve ser considerada exemplificativamente. O escopo da presente invenção deve ser determinado por construção racional das reivindicações em anexo e todas as modificações dentro de um escopo equivalente da presente invenção estão incluídas no escopo da presente invenção.
[0267][ Aplicabilidade Industrial ] [0268]Aqui acima, as modalidades preferenciais da presente invenção são descritas para um propósito ilustrativo e em seguida, modificações, alterações, substituições ou adições de várias outras modalidades serão feitas dentro do espírito técnico e do escopo técnico da presente invenção descrita nas reivindicações em anexo pelos versados na técnica.

Claims (11)

  1. REIVINDICAÇÕES
    1. Método para decodificar um sinal de vídeo, CARACTERIZADO pelo fato de que compreende:
    gerar um bloco de transformada quantizado executando a decodificação de entropia para o sinal de vídeo;
    gerar um bloco de transformada desquantizado executando a desquantização para o bloco de transformada quantizado;
    determinar se deve-se aplicar transformada inversa secundária com base em informação relacionada a um coeficiente não nulo no bloco de transformada desquantizado; e executar a transformada inversa secundária para o bloco de transformada desquantizado utilizando um núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado.
  2. 2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a determinação de se aplicar a transformada inversa secundária compreende verificar se um ou mais coeficientes não nulos existem em uma região específica superior esquerda do bloco de transformada desquantizado, e se um ou mais coeficientes não nulos existem na região específica, a transformada inversa secundária é aplicada ao bloco de transformada desquantizado.
  3. 3. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a determinação de se aplicar a segunda transformada inversa compreende verificar o número de coeficientes não nulos na região específica superior esquerda do bloco de transformada desquantizado, e se o número de coeficientes não nulos na região específica exceder um limite específico, a transformada inversa secundária é aplicada ao bloco de transformada desquantizado.
  4. 4. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de
    Petição 870190062105, de 03/07/2019, pág. 12/15
    2/3 que a determinação de se aplicar a segunda transformada inversa compreende:
    particionar o bloco de transformada desquantizado em sub-blocos tendo um tamanho específico, e determinar se deve aplicar a transformação inversa secundária em unidades do sub-bloco.
  5. 5. Método, de acordo com a reivindicação 4, CARACTERIZADO pelo fato de que a determinação de se aplicar a transformada inversa secundária em unidades do sub-bloco compreende verificar se existe um ou mais coeficientes não nulos em um sub-bloco atual, e se existir um ou mais coeficientes não nulos no sub-bloco atual, a transformada inversa secundária é aplicada ao sub-bloco atual.
  6. 6. Método, de acordo com a reivindicação 4, CARACTERIZADO pelo fato de que a determinação de se aplicar a segunda transformada inversa em unidades do sub-bloco compreende verificar um número de coeficientes não nulos no sub-bloco atual, e se o número de coeficientes não nulos no sub-bloco atual exceder um limite específico, a transformada inversa secundária é aplicada ao sub-bloco atual.
  7. 7. Método, de acordo com a reivindicação 1, CARACTERIZADO adicionalmente pelo fato de que compreende:
    determinar um tamanho do núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado com base na informação relacionada com o coeficiente não nulo no bloco de transformada desquantizado.
  8. 8. Método para decodificar um sinal de vídeo, de acordo com a reivindicação 7, CARACTERIZADO pelo fato de que o tamanho do núcleo de transformada inversa secundária é determinado como um tamanho de um menor núcleo de transformada inversa secundária dentre os núcleos de transformada inversa secundária incluindo os coeficientes não nulos que existem em uma região tendo um tamanho específico
    Petição 870190062105, de 03/07/2019, pág. 13/15
    3/3 em um tamanho específico superior esquerdo do bloco de transformada desquantizado.
  9. 9. Método, de acordo com a reivindicação 1, CARACTERIZADO adicionalmente pelo fato de que compreende:
    se o tamanho do bloco de transformada desquantizado for maior do que um bloco tendo um tamanho mínimo predeterminado, extrair uma sintaxe indicando o tamanho do núcleo de transformada inversa secundária a partir do sinal de vídeo; e determinar o tamanho do núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado com base na sintaxe.
  10. 10. Método para decodificar um sinal de vídeo, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que a sintaxe que indica o tamanho do núcleo de transformada inversa secundária é transmitida em unidades de uma sequência, uma imagem, uma fatia, um bloco de codificação, ou um bloco de transformada.
  11. 11. Aparelho para decodificar um sinal de vídeo, CARACTERIZADO pelo fato de que compreende:
    uma unidade de decodificação de entropia que gera um bloco de transformada quantizado através de executar decodificação de entropia para o sinal de vídeo;
    uma unidade desquantização que gera um bloco de transformada desquantizado executando desquantização para o bloco de transformada quantizado;
    uma unidade de determinação de transformada inversa secundária determinando se deve-se aplicar transformada inversa secundária com base em informação relacionada com um coeficiente não nulo no bloco de transformada desquantizado; e uma unidade de transformada inversa secundária executando a transformada inversa secundária para o bloco de transformada desquantizado utilizando um núcleo de transformada inversa secundária aplicado ao bloco de transformada desquantizado.
BR112019013834A 2017-01-03 2017-12-27 método e aparelho para codificar / decodificar sinal de vídeo usando transformada secundária BR112019013834A2 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US201762441587P 2017-01-03 2017-01-03
PCT/KR2017/015591 WO2018128323A1 (ko) 2017-01-03 2017-12-27 이차 변환을 이용한 비디오 신호의 인코딩/디코딩 방법 및 장치

Publications (1)

Publication Number Publication Date
BR112019013834A2 true BR112019013834A2 (pt) 2020-01-28

Family

ID=62789532

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019013834A BR112019013834A2 (pt) 2017-01-03 2017-12-27 método e aparelho para codificar / decodificar sinal de vídeo usando transformada secundária

Country Status (7)

Country Link
US (1) US20190356915A1 (pt)
EP (1) EP3567858A4 (pt)
JP (1) JP6870096B2 (pt)
KR (1) KR102287305B1 (pt)
CN (1) CN110326294A (pt)
BR (1) BR112019013834A2 (pt)
WO (1) WO2018128323A1 (pt)

Families Citing this family (32)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN115052153A (zh) * 2016-02-11 2022-09-13 交互数字Vc控股公司 用于对图像单元进行编码/解码的方法和设备
US11405645B2 (en) * 2017-02-28 2022-08-02 Google Llc Transform kernel selection and entropy coding
US10855997B2 (en) * 2017-04-14 2020-12-01 Mediatek Inc. Secondary transform kernel size selection
CN109922340B (zh) * 2017-12-13 2021-10-15 华为技术有限公司 图像编解码方法、装置、系统及存储介质
KR102650865B1 (ko) 2018-04-01 2024-03-22 엘지전자 주식회사 분할된 블록에 2차 변환을 적용하여 비디오 신호를 처리하는 방법 및 장치
EP3764649B1 (en) 2018-04-01 2023-09-27 LG Electronics Inc. Processing video signal by using reduced secondary transform
US20190313108A1 (en) * 2018-04-05 2019-10-10 Qualcomm Incorporated Non-square blocks in video coding
US11166044B2 (en) * 2018-07-31 2021-11-02 Tencent America LLC Method and apparatus for improved compound orthonormal transform
KR102488860B1 (ko) 2018-09-02 2023-01-13 엘지전자 주식회사 영상 신호를 처리하기 위한 방법 및 장치
CN115484463B (zh) 2018-09-05 2024-06-04 Lg电子株式会社 对视频信号进行解码/编码及发送数据的设备
KR20210046002A (ko) * 2018-09-07 2021-04-27 주식회사 윌러스표준기술연구소 다중 변환 커널을 사용하는 비디오 신호 처리 방법 및 장치
GB2579824B (en) 2018-12-14 2022-05-18 British Broadcasting Corp Video encoding and video decoding
GB2580326A (en) * 2018-12-28 2020-07-22 British Broadcasting Corp Video encoding and video decoding
US11190794B2 (en) * 2019-02-12 2021-11-30 Tencent America LLC Method and apparatus for video coding
CN111669582B (zh) 2019-03-09 2022-05-20 杭州海康威视数字技术股份有限公司 进行编码和解码的方法、编码端、解码端和系统
US11172211B2 (en) * 2019-04-04 2021-11-09 Tencent America LLC Method and apparatus for video coding
CN113767627B (zh) * 2019-04-23 2022-11-25 北京字节跳动网络技术有限公司 基于二次变换的视频处理中的裁剪操作
CN113812162B (zh) 2019-05-10 2022-12-30 北京字节跳动网络技术有限公司 视频中的简化二次变换的上下文建模
CN113170199B (zh) * 2019-05-15 2024-06-07 株式会社Xris 用于对图像信号进行编码/解码的方法及其装置
CN113950828A (zh) 2019-06-07 2022-01-18 北京字节跳动网络技术有限公司 视频比特流中的简化二次变换的有条件信令
GB2585030A (en) * 2019-06-25 2020-12-30 British Broadcasting Corp Method of signalling in a video codec
JP7422858B2 (ja) 2019-08-03 2024-01-26 北京字節跳動網絡技術有限公司 ビデオ処理方法、装置、記憶媒体及び記憶方法
CN114223208B (zh) 2019-08-17 2023-12-29 北京字节跳动网络技术有限公司 为视频中的缩减二次变换的边信息的上下文建模
WO2021054787A1 (ko) 2019-09-21 2021-03-25 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
WO2021060827A1 (ko) * 2019-09-23 2021-04-01 엘지전자 주식회사 변환에 기반한 영상 코딩 방법 및 그 장치
WO2021110018A1 (en) * 2019-12-02 2021-06-10 Beijing Bytedance Network Technology Co., Ltd. Separable secondary transform processing of coded video
CN114007080B (zh) * 2019-12-03 2022-12-23 杭州海康威视数字技术股份有限公司 一种编码、解码方法、装置及其设备
CN113473129B (zh) * 2020-03-30 2022-12-23 杭州海康威视数字技术股份有限公司 一种编码、解码方法及装置
US11310529B2 (en) * 2020-05-27 2022-04-19 Tencent America LLC Mode-dependent joint component transform
CN111741302B (zh) * 2020-08-07 2021-05-14 腾讯科技(深圳)有限公司 数据处理方法、装置、计算机可读介质及电子设备
CN114422782B (zh) * 2021-12-23 2023-09-19 北京达佳互联信息技术有限公司 视频编码方法、装置、存储介质及电子设备
WO2024071680A1 (ko) * 2022-09-29 2024-04-04 현대자동차주식회사 분리 불가능한 1차 변환 기반 비디오 코딩을 위한 방법 및 장치

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BRPI0922846A2 (pt) * 2008-12-03 2018-01-30 Nokia Corp alternando entre modos de codificação do coeficiente dct
US9661338B2 (en) * 2010-07-09 2017-05-23 Qualcomm Incorporated Coding syntax elements for adaptive scans of transform coefficients for video coding
KR101943049B1 (ko) * 2011-06-30 2019-01-29 에스케이텔레콤 주식회사 영상 부호화/복호화 방법 및 장치
US9344722B2 (en) * 2011-11-18 2016-05-17 Futurewei Technologies, Inc. Scanning of prediction residuals in high efficiency video coding
LT2869563T (lt) * 2012-07-02 2018-07-10 Samsung Electronics Co., Ltd. Vaizdo entropinio dekodavimo būdas
WO2014055826A2 (en) * 2012-10-05 2014-04-10 Huawei Technologies Co., Ltd. Improved architecture for hybrid video codec
US20140254661A1 (en) * 2013-03-08 2014-09-11 Samsung Electronics Co., Ltd. Method and apparatus for applying secondary transforms on enhancement-layer residuals
CN105516730B (zh) * 2014-09-24 2018-04-24 晨星半导体股份有限公司 视讯编码装置及视讯解码装置以及其编码与解码方法
WO2017195667A1 (ja) * 2016-05-13 2017-11-16 ソニー株式会社 画像処理装置および方法
US10855997B2 (en) * 2017-04-14 2020-12-01 Mediatek Inc. Secondary transform kernel size selection

Also Published As

Publication number Publication date
JP6870096B2 (ja) 2021-05-12
WO2018128323A1 (ko) 2018-07-12
KR20190090866A (ko) 2019-08-02
US20190356915A1 (en) 2019-11-21
EP3567858A4 (en) 2020-06-17
CN110326294A (zh) 2019-10-11
EP3567858A1 (en) 2019-11-13
KR102287305B1 (ko) 2021-08-06
JP2020504526A (ja) 2020-02-06

Similar Documents

Publication Publication Date Title
BR112019013834A2 (pt) método e aparelho para codificar / decodificar sinal de vídeo usando transformada secundária
US11889067B2 (en) Intra-prediction mode-based image processing method and device therefor
BR112019013831A2 (pt) método de processamento de imagem e aparelho para tal finalidade
RU2746706C1 (ru) Способ и устройство кодирования/декодирования изображений
KR102543471B1 (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
BR112021000667A2 (pt) Método e aparelho de processamento de vídeo em um sistema de codificação de vídeo para codificar ou decodificar imagens de vídeo com uma restrição de partição e meio legível por computador não transitório
BR112019018464A2 (pt) indicador de filtragem intra na codificação de vídeo
BR112020019715A2 (pt) combinação de intrapredição dependente de posição estendida com modos angulares
JP2019534629A (ja) 画像処理方法及びこのための装置
KR20190042732A (ko) 인트라 예측 모드 기반 영상 처리 방법 및 이를 위한 장치
JP2022521933A (ja) 符号化方法、復号化方法、デコーダ、エンコーダー及び記憶媒体
US20200288146A1 (en) Intra-prediction mode-based image processing method and apparatus therefor
BR122021003525B1 (pt) Método de decodificação de vídeo realizado por um dispositivo de decodificação, método de codificação de vídeo realizado por um dispositivo de codificação e mídiade armazenamento legível por computador
KR20150051962A (ko) 데이터 단위 레벨의 독립적 파싱 또는 복호화에 따른 비디오 복호화 방법 및 그 장치, 그리고 데이터 단위 레벨의 독립적 파싱 또는 복호화를 위한 비디오 부호화 방법 및 그 장치
KR20150051963A (ko) 데이터 단위 레벨의 독립적 파싱 또는 복호화에 따른 비디오 복호화 방법 및 그 장치, 그리고 데이터 단위 레벨의 독립적 파싱 또는 복호화를 위한 비디오 부호화 방법 및 그 장치
WO2022191947A1 (en) State based dependent quantization and residual coding in video coding
KR20180009358A (ko) 영상의 부호화/복호화 방법 및 이를 위한 장치
KR20140140002A (ko) 데이터 단위 레벨의 독립적 파싱 또는 복호화에 따른 비디오 복호화 방법 및 그 장치, 그리고 데이터 단위 레벨의 독립적 파싱 또는 복호화를 위한 비디오 부호화 방법 및 그 장치
KR20140071298A (ko) 데이터 단위 레벨의 독립적 파싱 또는 복호화에 따른 비디오 복호화 방법 및 그 장치, 그리고 데이터 단위 레벨의 독립적 파싱 또는 복호화를 위한 비디오 부호화 방법 및 그 장치

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 4A ANUIDADE.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: EM VIRTUDE DO ARQUIVAMENTO PUBLICADO NA RPI 2650 DE 19-10-2021 E CONSIDERANDO AUSENCIA DE MANIFESTACAO DENTRO DOS PRAZOS LEGAIS, INFORMO QUE CABE SER MANTIDO O ARQUIVAMENTO DO PEDIDO DE PATENTE, CONFORME O DISPOSTO NO ARTIGO 12, DA RESOLUCAO 113/2013.