BR122021014718B1 - Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória - Google Patents

Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória Download PDF

Info

Publication number
BR122021014718B1
BR122021014718B1 BR122021014718-3A BR122021014718A BR122021014718B1 BR 122021014718 B1 BR122021014718 B1 BR 122021014718B1 BR 122021014718 A BR122021014718 A BR 122021014718A BR 122021014718 B1 BR122021014718 B1 BR 122021014718B1
Authority
BR
Brazil
Prior art keywords
cclm
samples
chroma block
block
current
Prior art date
Application number
BR122021014718-3A
Other languages
English (en)
Inventor
Jangwon CHOI
Jin Heo
Seunghwan Kim
Sunmi YOO
Ling Li
Jungah CHOI
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 BR122021014718B1 publication Critical patent/BR122021014718B1/pt

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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
    • 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/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/182Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a pixel
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/11Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/186Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression Of Band Width Or Redundancy In Fax (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Communication Control (AREA)

Abstract

Trata-se de um método de decodificação de vídeo realizado por um aparelho de decodificação de acordo com a presente revelação que inclui derivar um dentre uma pluralidade de modos de predição de modelo linear de componente cruzado (CCLM) como um modo de predição de CCLM do bloco de croma atual, derivar um número de amostra de amostras de croma vizinhas do bloco de croma atual com base no modo de predição de CCLM do bloco de croma atual, um tamanho do bloco de croma atual, e um valor específico; derivar as amostras de croma vizinhas do número de amostra, calcular parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente, derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e nas amostras de luma amostradas descendentemente e gerar amostras reconstruídas para o bloco de croma atual com base nas amostras de predição, em que o valor específico é derivado como 2.

Description

FUNDAMENTOS DA REVELAÇÃO Campo da revelação
[001] A presente revelação refere-se a uma técnica de codificação de vídeo, e, mais particularmente, a um método de decodificação de vídeo e dispositivo com base em predição de CCLM em um sistema de codificação de vídeo.
Técnica relacionada
[002] Recentemente, a demanda por imagens de alta resolução e alta qualidade, tais como imagens HD (Alta Definição) e imagens UHD (Definição Ultra Alta) aumentou em vários campos. Visto que dados de imagem têm alta resolução e alta qualidade, a quantidade de informações ou bits a serem transmitidos aumenta em relação aos dados e imagem de legado. Portanto, quando dados de imagem forem transmitidos usando uma mídia tal como uma linha de banda larga convencional com/sem fio ou dados de imagem forem armazenados usando uma mídia de armazenamento existente, os custos de transmissão e os custos de armazenamento dos mesmos são aumentados.
[003] De modo correspondente, há uma necessidade por uma técnica de compactação de imagens altamente eficiente para transmitir, armazenar e reproduzir efetivamente informações de imagens de alta resolução e alta qualidade.
SUMÁRIO
[004] A presente revelação proporciona um método e dispositivo para aperfeiçoar a eficiência de codificação de imagens.
[005] A presente revelação também proporciona um método e dispositivo para aperfeiçoar a eficiência intrapredição.
[006] A presente revelação também proporciona um método e dispositivo para aperfeiçoar a eficiência intrapredição com base em um Modelo Linear de Componente Cruzado (CCLM).
[007] A presente revelação também proporciona métodos de codificação e decodificação eficientes para predição de CCLM incluindo uma pluralidade de modos de predição de CCLM, e um dispositivo para realizar o método de codificação e decodificação.
[008] A presente revelação também proporciona um método e dispositivo para selecionar uma amostra vizinha para derivar um parâmetro de modelo linear para uma pluralidade de modos de predição de CCLM.
[009] De acordo com uma modalidade da presente revelação, proporciona-se um método de decodificação de vídeo realizado por um aparelho de decodificação. O método inclui obter informações de vídeo que compreendem informações de modo de predição para um bloco de croma atual, derivar um dentre uma pluralidade de modos de predição de modelo linear de componente cruzado (CCLM) como um modo de predição de CCLM do bloco de croma atual, derivar um número de amostra de amostras de croma vizinhas do bloco de croma atual com base no modo de predição de CCLM do bloco de croma atual, um tamanho do bloco de croma atual, e um valor específico; derivar as amostras de croma vizinhas do número de amostra, derivar amostras de luma vizinhas amostradas descendentemente e amostras de luma amostradas descendentemente de um bloco de luma atual, em que as amostras de luma vizinhas correspondem às amostras de croma vizinhas, calcular parâmetros de CCLM com base nas amostras de croma vizinhas e as amostras de luma vizinhas amostradas descendentemente, derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e as amostras de luma amostradas descendentemente e gerar amostras reconstruídas para o bloco de croma atual com base nas amostras de predição, em que o valor específico é derivado como 2.
[010] De acordo com outra modalidade da presente revelação, proporciona- se um aparelho de decodificação para realizar decodificação de vídeo. O aparelho de decodificação inclui um decodificador de entropia para obter informações de vídeo que compreendem informações de modo de predição para um bloco de croma atual, um preditor para derivar um dentre uma pluralidade de modos de predição de modelo linear de componente cruzado (CCLM) como um modo de predição de CCLM do bloco de croma atual, derivar um número de amostra de amostras de croma vizinhas do bloco de croma atual com base no modo de predição de CCLM do bloco de croma atual, um tamanho do bloco de croma atual, e um valor específico; derivar as amostras de croma vizinhas do número de amostra, derivar amostras de luma vizinhas amostradas descendentemente e amostras de luma amostradas descendentemente de um bloco de luma atual, em que as amostras de luma vizinhas correspondem às amostras de croma vizinhas, calcular parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente, derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e as amostras de luma amostradas descendentemente, e um subtrator para gerar amostras reconstruídas para o bloco de croma atual com base nas amostras de predição, em que o valor específico é derivado como 2.
[011] De acordo com ainda outra modalidade da presente revelação, proporciona-se um método de codificação de vídeo realizado por um aparelho de codificação. O método inclui determinar um modo de predição de modelo linear de componente cruzado (CCLM) dentre uma pluralidade de modos de predição de CCLM; derivar um número de amostra de amostras de croma vizinhas do bloco de croma atual com base no modo de predição de CCLM do bloco de croma atual, um tamanho do bloco de croma atual, e um valor específico; derivar as amostras de croma vizinhas do número de amostra; derivar amostras de luma vizinhas amostradas descendentemente e amostras de luma amostradas descendentemente de um bloco de luma atual, em que as amostras de luma vizinhas correspondem às amostras de croma vizinhas; calcular parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente; derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e as amostras de luma amostradas descendentemente; e codificar informações de vídeo incluindo informações de modo de predição para o bloco de croma atual, em que o valor específico é derivado como 2.
[012] De acordo com ainda outra modalidade da presente revelação, proporciona-se um aparelho de codificação de vídeo. O aparelho de codificação inclui um preditor para determinar um modo de predição de modelo linear de componente cruzado (CCLM) dentre uma pluralidade de modos de predição de CCLM, derivar um número de amostra de amostras de croma vizinhas do bloco de croma atual com base no modo de predição de CCLM do bloco de croma atual, um tamanho do bloco de croma atual, e um valor específico, derivar as amostras de croma vizinhas do número de amostra, derivar amostras de luma vizinhas amostradas descendentemente e amostras de luma amostradas descendentemente de um bloco de luma atual, em que as amostras de luma vizinhas correspondem às amostras de croma vizinhas, derivar parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente, derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e as amostras de luma amostradas descendentemente e um codificador de entropia para codificar informações de vídeo incluindo informações de modo de predição para o bloco de croma atual, em que o valor específico é derivado como 2.
[013] De acordo com a presente revelação, pode-se aperfeiçoar a eficiência de codificação de imagem/vídeo geral.
[014] De acordo com a presente revelação, pode-se aperfeiçoar a eficiência de intrapredição.
[015] De acordo com a presente revelação, pode-se aperfeiçoar a eficiência de codificação de imagem realizando-se uma intrapredição com base em CCLM.
[016] De acordo com a presente revelação, pode-se aperfeiçoar a eficiência de intrapredição, que se baseia em CCLM incluindo uma pluralidade de modos LM, ou seja, Modelo Linear Multi-Direcional (MDLM).
[017] De acordo com a presente revelação, o número de amostras vizinhas selecionado para derivar um parâmetro de modelo linear para Modelo Linear Multi- Direcional (MDLM) realizado em um bloco de croma tendo um tamanho grande é limitado a um número específico, e, de modo correspondente, pode-se reduzir a complexidade de intrapredição.
BREVE DESCRIÇÃO DOS DESENHOS
[018] A Figura 1 ilustra brevemente um exemplo de um dispositivo de codificação de vídeo/imagem ao qual as modalidades da presente revelação são aplicáveis.
[019] A Figura 2 é um diagrama esquemático que ilustra uma conGravura de um aparelho de codificação de vídeo/imagem ao qual as modalidades do presente documento podem ser aplicadas.
[020] A Figura 3 é um diagrama esquemático que ilustra uma conGravura de um aparelho de decodificação de vídeo/imagem ao qual as modalidades do presente documento podem ser aplicadas.
[021] A Figura 4 ilustra modos intradirecionais de 65 direções de predição.
[022] A Figura 5 é um diagrama para descrever um processo de derivar um modo de intrapredição de um bloco de croma atual de acordo com uma modalidade.
[023] A Figura 6 ilustra 2N amostras de referência para cálculo de parâmetro para predição de CCLM descrita anteriormente.
[024] A Figura 7 ilustra modo LM_A (Linear_Model_Above) e modo LM_L (Linear_Model_Left).
[025] As Figuras 8a e 8b são diagramas para descrever um procedimento para realizar uma predição de CCLM para um bloco de croma atual de acordo com uma modalidade.
[026] As Figuras 9a e 9b são diagramas para descrever um procedimento para realizar uma predição de CCLM para um bloco de croma atual de acordo com uma modalidade.
[027] As Figuras 10a e 10b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 1 da presente modalidade descrita anteriormente.
[028] As Figuras 11a e 11b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 2 da presente modalidade descrita anteriormente.
[029] As Figuras 12a e 12b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 3 da presente modalidade descrita anteriormente.
[030] As Figuras 13a e 13b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 4 da presente modalidade descrita anteriormente.
[031] As Figuras 14a e 14b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 1 da presente modalidade descrita anteriormente.
[032] As Figuras 15a e 15b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 2 da presente modalidade descrita anteriormente.
[033] As Figuras 16a e 16b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 3 da presente modalidade descrita anteriormente.
[034] A Figura 17 ilustra um exemplo de selecionar uma amostra de referência vizinha de um bloco de croma.
[035] As Figuras 18a a 18c ilustram amostras de referência vizinhas derivadas através da subamostragem existente e amostras de referência vizinhas derivadas através da subamostragem de acordo com a presente modalidade.
[036] A Figura 19 ilustra um exemplo de realizar uma predição de CCLM usando uma subamostragem usando a Equação 6 descrita acima.
[037] As Figuras 20a e 20b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 1 da presente modalidade descrita anteriormente.
[038] As Figuras 21a e 21b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 2 da presente modalidade descrita anteriormente.
[039] As Figuras 22a e 22b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 3 da presente modalidade descrita anteriormente.
[040] A Figura 23 é um diagrama para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 4 da presente modalidade descrita anteriormente.
[041] A Figura 24 ilustra esquematicamente um método de codificação de vídeo pelo aparelho de codificação de acordo com a presente revelação.
[042] A Figura 25 ilustra esquematicamente o aparelho de codificação que realiza o método de codificação de imagem de acordo com a presente revelação.
[043] A Figura 26 ilustra esquematicamente um método de decodificação de vídeo pelo aparelho de decodificação de acordo com a presente revelação.
[044] A Figura 27 ilustra esquematicamente um aparelho de decodificação para realizar um método de decodificação de vídeo de acordo com a presente revelação.
[045] A Figura 28 ilustra um diagrama estrutural de um sistema de streaming de conteúdos ao qual a presente revelação é aplicada.
DESCRIÇÃO DAS MODALIDADES EXEMPLIFICADORAS
[046] A presente revelação pode ser modificada de várias formas, e modalidades específicas da mesma serão descritas e ilustradas nos desenhos. No entanto, as modalidades não são destinadas a limitar a revelação. Os termos usados na descrição a seguir são usados para meramente descrever modalidades específicas, mas não são destinadas a limitar a revelação. Uma expressão de um número singular inclui uma expressão do número no plural, desde que seja claramente lida diferentemente. Os termos “incluir” e “ter” são destinados a indicar que recursos, números, etapas, operações, elementos, componentes ou combinações dos mesmos usados na descrição a seguir existem e, portanto, deve-se compreender que a possibilidade de existência ou adição de um ou mais diferentes recursos, números, etapas, operações, elementos, componentes ou combinações dos mesmos não é excluída.
[047] Entretanto, elementos nos desenhos descritos na revelação são independentemente desenhados para o propósito de conveniência para explicação de diferentes funções específicas, e não significa que os elementos são incorporados por hardware independente ou software independente. Por exemplo, dois ou mais elementos podem ser combinados para formar um elemento único ou um elemento pode ser dividido em vários elementos. As modalidades cujos elementos são combinados e/ou divididos pertencem à revelação sem divergir do conceito da revelação.
[048] Doravante, as modalidades da presente revelação serão descritas em detalhes com referência aos desenhos anexos. Além disso, referências numéricas similares são usadas para indicar elementos similares no decorrer dos desenhos, e as mesmas descrições nos elementos similares serão omitidas.
[049] A Figura 1 ilustra brevemente um exemplo de um dispositivo de codificação de vídeo/imagem ao qual as modalidades da presente revelação são aplicáveis.
[050] Referindo-se à Figura 1, um sistema de codificação de vídeo/imagem pode incluir um primeiro dispositivo (dispositivo de origem) e um segundo dispositivo (dispositivo de recepção). O dispositivo de origem pode entregar informações ou dados de vídeo/imagem codificados sob a forma de um arquivo ou streaming ao dispositivo de recepção através de uma mídia de armazenamento digital ou rede.
[051] O dispositivo de origem pode incluir uma fonte de vídeo, um aparelho de codificação, e um transmissor. O dispositivo de recepção pode incluir um receptor, um aparelho de decodificação, e um renderizador. O aparelho de codificação pode ser denominado um aparelho de codificação de vídeo/imagem, e o aparelho de decodificação pode ser denominado como um aparelho de decodificação de vídeo/imagem. O transmissor pode ser incluído no aparelho de codificação. O receptor pode ser incluído no aparelho de decodificação. O renderizador pode incluir uma tela, e a tela pode ser configurada como um dispositivo separado ou um componente externo.
[052] A fonte de vídeo pode adquirir vídeo/imagem através de um processo de capturar, sintetizar, ou gerar o vídeo/imagem. A fonte de vídeo pode incluir um dispositivo de captura de vídeo/imagem e/ou um dispositivo de geração de vídeo/imagem. O dispositivo de captura de vídeo/imagem pode incluir, por exemplo, uma ou mais câmeras, arquivos de vídeo/imagem incluindo vídeos/imagens previamente capturados, e similares. O dispositivo de geração de vídeo/imagem pode incluir, por exemplo, computadores, tablets e smartphones, e pode gerar (eletronicamente) vídeo/imagens. Por exemplo, um vídeo/imagem virtual pode ser gerado através de um computador, ou similares. Nesse caso, o processo de captura de vídeo/imagem pode ser substituído por um processo de gerar dados relacionados.
[053] O aparelho de codificação pode codificar vídeo/imagem de entrada. O aparelho de codificação pode realizar uma série de procedimentos como predição, transformada, e quantização para compactação e eficiência de codificação. Os dados codificados (informações de vídeo/imagem codificadas) podem ser emitidos sob a forma de um fluxo de bits.
[054] O transmissor pode transmitir as informações ou dados de imagem/imagem codificados emitidas sob a forma de um fluxo de bits ao receptor do dispositivo de recepção através de uma mídia de armazenamento digital ou uma rede sob a forma de um arquivo ou streaming. A mídia de armazenamento digital pode incluir várias mídias de armazenamento como USB, SD, CD, DVD, Blu-ray, HDD, SSD, e similares. O transmissor pode incluir um elemento para gerar um arquivo de mídia através de um formato de arquivo predeterminado e pode incluir um elemento para transmissão através de uma rede de radiodifusão/comunicação. O receptor pode receber/extrair o fluxo de bits e transmitir o fluxo de bits recebido ao aparelho de decodificação.
[055] O aparelho de decodificação pode decodificar o vídeo/imagem realizando-se uma série de procedimentos tais como desquantização, transformada inversa, e predição correspondente à operação do aparelho de codificação.
[056] O renderizador pode renderizar o vídeo/imagem decodificado. O vídeo/imagem renderizado pode ser exibido através da tela.
[057] Este documento se refere à codificação de vídeo/imagem. Por exemplo, os métodos/modalidades revelados neste documento podem ser aplicados a um método revelado na codificação de vídeo versátil (VVC), padrão EVC (codificação de vídeo essencial), padrão AOMedia Video 1 (AV1), padrão de 2a geração de codificação de vídeo e áudio (AVS2), ou o padrão de codificação de vídeo/imagem de próxima geração (ex. H.267 ou H.268, etc.).
[058] Este documento apresenta várias modalidades de codificação de vídeo/imagem, e as modalidades podem ser realizadas em combinação umas com as outras exceto onde mencionado em contrário.
[059] Neste documento, o vídeo pode se referir a uma série de imagens com o passar do tempo. Em geral, Gravura se refere a uma unidade que representa uma imagem em um fuso-horário específico, e uma fatia/ladrilho é uma unidade que constitui parte de uma Gravura em codificação. A fatia/ladrilho pode incluir uma ou mais unidades de árvore de codificação (CTUs). Uma Gravura pode consistir em uma ou mais fatias/ladrilhos. Uma Gravura pode consistir em um ou mais grupos de ladrilho. Um grupo de ladrilho pode incluir um ou mais ladrilhos. Um tijolo pode representar uma região retangular de fileiras de CTU em um ladrilho em uma Gravura. Um ladrilho pode ser particionado em múltiplos tijolos, sendo que cada um consiste em uma ou mais fileiras de CTU dentro do ladrilho. Um ladrilho que não é particionado em múltiplos tijolos também pode ser referido como um tijolo. Uma varredura de tijolo é uma ordenação sequencial específica de CTUs que particionam uma Gravura em que as CTUs são ordenadas consecutivamente em varredura rasterizada de CTU em um tijolo, tijolos dentro de um ladrilho são ordenados consecutivamente em uma varredura rasterizada dos tijolos do ladrilho, e os ladrilhos em uma Gravura são ordenados consecutivamente em uma varredura rasterizada dos ladrilhos da Gravura. Um ladrilho é uma região retangular de CTUs dentro de uma coluna de ladrilho particular e uma fileira de ladrilho particular em uma Gravura. A coluna de ladrilho é uma região retangular de CTUs tendo uma altura igual à altura da Gravura e uma largura especificada pelos elementos de sintaxe no conjunto de parâmetro de Gravura. A fileira de ladrilho é uma região retangular de CTUs tendo uma altura especificada pelos elementos de sintaxe no conjunto de parâmetro de Gravura e uma largura igual à largura da Gravura. Uma varredura de ladrilho é uma ordenação específica de CTUs que particionam uma Gravura em que as CTUs são ordenadas consecutivamente em varredura rasterizada de CTU em um ladrilho enquanto os ladrilhos em uma Gravura são ordenados consecutivamente em uma varredura rasterizada dos ladrilhos da Gravura. Uma fatia inclui um número inteiro de tijolos de uma Gravura que pode ser exclusivamente contida em uma unidade de NAL simples. Uma fatia pode consistir em um número de ladrilhos completos ou somente uma sequência consecutiva de tijolos completos de um ladrilho. Os grupos de ladrilho e fatias podem ser usados de modo intercambiável neste documento. Por exemplo, neste documento, um grupo de ladrilho/cabeçalho de grupo de ladrilho pode ser denominado como uma fatia/cabeçalho de fatia.
[060] Um pixel ou um pel pode significar uma menor unidade que constitui uma Gravura (ou imagem). Da mesma forma, ‘amostra’ pode ser usada como um termo correspondente a um pixel. Uma amostra pode, em geral, representar um pixel ou um valor de um pixel, e pode representar somente um pixel/valor de pixel de um componente de luma ou somente um pixel/valor de pixel de um componente de croma.
[061] Uma unidade pode representar uma unidade básica de processamento de imagem. A unidade pode incluir pelo menos uma dentre uma região específica da Gravura e informações relacionadas à região. Uma unidade pode incluir um bloco de luma e dois blocos de croma (ex. cb, cr). A unidade pode ser usada de modo intercambiável com termos como bloco ou área em alguns casos. Em um caso geral, um bloco MxN pode incluir amostras (ou arranjos de amostra) ou um conjunto (ou arranjo) de coeficientes de transformada de M colunas e N fileiras.
[062] Neste documento, o termo “/” e “,” deve ser interpretado para indicar “e/ou.” Por exemplo, a expressão “A/B” pode significar “A e/ou B.” Ademais, “A, B” ode significar “A e/ou B.” Ademais, “A/B/C” pode significar “pelo menos um dentre A, B, e/ou C.” Da mesma forma, “A/B/C” pode significar “pelo menos um dentre A, B, e/ou C.”
[063] Ademais, no documento, o termo “ou” deve ser interpretado para indicar “e/ou.” Por exemplo, a expressão “A ou B” pode compreender 1) somente A, 2) somente B, e/ou 3) tanto A como B. Em outras palavras, o termo “ou” neste documento deve ser interpretado para indicar “adicional ou alternativamente.”
[064] A Figura 2 é um diagrama esquemático que ilustra uma conGravura de um aparelho de codificação de vídeo/imagem ao qual as modalidades do presente documento podem ser aplicadas. Doravante, o aparelho de codificação de vídeo pode incluir um aparelho de codificação de imagem.
[065] Referindo-se à Figura 2, o aparelho de codificação 200 inclui um particionador de imagem 210, um preditor 220, um processador de residual 230, e um codificador de entropia 240, um adicionador 250, um filtro 260, e uma memória 270. O preditor 220 pode incluir um interpreditor 221 e um intrapreditor 222. O processador de residual 230 pode incluir um transformador 232, um quantizador 233, um desquantizador 234, e um transformador inverso 235. O processador de residual 230 pode incluir, ainda, um subtrator 231. O adicionador 250 pode ser denominado como um reconstrutor ou um gerador de bloco reconstruído. O particionador de imagem 210, o preditor 220, o processador de residual 230, o codificador de entropia 240, o adicionador 250, e o filtro 260 podem ser configurados por ao menos um componente de hardware (ex. um chipset ou processador de codificador) de acordo com uma modalidade. Além disso, a memória 270 pode incluir uma memória temporária de Gravura decodificada (DPB) ou pode ser configurada por uma mídia de armazenamento digital. O componente de hardware pode incluir, ainda, a memória 270 como um componente interno/externo.
[066] O particionador de imagem 210 pode particionar uma imagem de entrada (ou uma Gravura ou um quadro) inserida ao aparelho de codificação 200 em um ou mais processadores. Por exemplo, o processador pode ser denominado como uma unidade de codificação (CU). Nesse caso, a unidade de codificação pode ser recursivamente particionada de acordo com uma estrutura de árvore quaternária árvore binária árvore terciária (QTBTTT) a partir de uma unidade de árvore de codificação (CTU) ou uma maior unidade de codificação (LCU). Por exemplo, uma unidade de codificação pode ser particionada em uma pluralidade de unidades de codificação de uma profundidade mais profunda com base em uma estrutura de árvore quaternária, estrutura de árvore binária, e/ou uma estrutura terciária. Nesse caso, por exemplo, a estrutura de árvore quaternária pode ser aplicada primeiramente e a estrutura de árvore binária e/ou estrutura terciária podem ser aplicadas posteriormente. Alternativamente, a estrutura de árvore binária pode ser aplicada primeiro. O procedimento de codificação de acordo com este documento pode ser realizado com base na unidade de codificação final que não é mais particionada. Nesse caso, a maior unidade de codificação pode ser usada como a unidade de codificação final com base na eficiência de codificação de acordo com características de imagem, ou, se necessário, a unidade de codificação pode ser recursivamente particionada em unidades de codificação de profundidade mais profunda e uma unidade de codificação tendo um tamanho ideal pode ser usada como a unidade de codificação final. No presente documento, o procedimento de codificação pode incluir um procedimento de predição, transformada, e reconstrução, que serão descritos posteriormente. Como outro exemplo, o processador pode incluir, ainda, uma unidade de predição (PU) ou uma unidade de transformada (TU). Nesse caso, a unidade de predição e a unidade de transformada podem ser divididas ou particionadas a partir da unidade de codificação final supramencionada. A unidade de predição pode ser uma unidade de predição de amostra, e a unidade de transformada pode ser uma unidade para derivar um coeficiente de transformada e/ou uma unidade para derivar um sinal residual a partir do coeficiente de transformada.
[067] A unidade pode ser usada de modo intercambiável com termos como bloco ou área em alguns casos. Em um caso geral, um bloco M*N pode representar um conjunto de amostras ou coeficientes de transformada compostos por M colunas e N fileiras. Uma amostra pode representar, em geral, um pixel ou um valor de um pixel, pode representar somente um pixel/valor de pixel de um componente de luma ou representar somente um pixel/valor de pixel de um componente de croma. Uma amostra pode ser usada como um termo correspondente a uma Gravura (ou imagem) para um pixel ou um pel.
[068] No aparelho de codificação 200, um sinal de predição (bloco predito, arranjo de amostra de predição) emitido a partir do interpreditor 221 ou o intrapreditor 222 é subtraído de um sinal de imagem de entrada (bloco original, arranjo de amostra original) para gerar um bloco residual de sinal residual, arranho de amostra residual), e o sinal residual gerado é transmitido ao transformador 232. Nesse caso, conforme mostrado, uma unidade para subtrair um sinal de predição (bloco predito, arranjo de amostra de predição) a partir do sinal de imagem de entrada (bloco original, arranjo de bloco original) no codificador 200 pode ser denominada como um subtrator 231. O preditor pode realizar uma predição em um bloco a ser processado (doravante, referido como um bloco atual) e gerar um bloco predito incluindo amostras de predição para o bloco atual. O preditor pode determinar se uma intrapredição ou uma interpredição é aplicada em um bloco atual ou base de CU. Conforme descrito mais adiante na descrição de cada modo de predição, o preditor pode gerar várias informações relacionadas à predição, tais como informações de modo de predição, e transmitir as informações geradas ao codificador de entropia 240. As informações sobre a predição podem ser codificadas no codificador de entropia 240 e emitidas sob a forma de um fluxo de bits.
[069] O intrapreditor 222 pode predizer o bloco atual referindo-se ás amostras na Gravura atual. As amostras referidas podem estar localizadas na vizinhança do bloco atual ou podem estar localizadas separadas de acordo com o modo de predição. Na intrapredição, os modos de predição podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. O modo não-direcional pode incluir, por exemplo, um modo DC e um modo planar. O modo direcional pode incluir, por exemplo, 33 modos de predição direcionais ou 65 modos de predição direcionais de acordo com o grau de detalhes da direção de predição. No entanto, esse é meramente um exemplo, mais ou menos modos de predição direcional podem ser usados dependendo de um ajuste. O intrapreditor 222 pode determinar o modo de predição aplicado ao bloco atual utilizando-se um modo de predição aplicado a um bloco vizinho.
[070] O interpreditor 221 pode derivar um bloco predito para o bloco atual com base em um bloco de referência (arranjo de amostra de referência) especificado por um vetor de movimento em uma Gravura de referência. No presente documento, a fim de reduzir a quantidade de informações de movimento transmitidas no modo de interpredição, as informações de movimento podem ser preditas em unidades de blocos, sub-blocos, ou amostras com base na correlação de informações de movimento entre o bloco vizinho e o bloco atual. As informações de movimento podem incluir um vetor de movimento e um índice de Gravura de referência. As informações de movimento podem incluir, ainda, informações de direção de interpredição (predição L0, predição L1, predição Bi, etc.). No caso de interpredição, o bloco vizinho pode incluir um bloco vizinho espacial presente na Gravura atual e um bloco vizinho temporal presente na Gravura de referência. A Gravura de referência incluindo o bloco de referência e a Gravura de referência incluindo o bloco vizinho temporal podem ser iguais ou diferentes. O bloco vizinho temporal pode ser denominado como um bloco de referência colocalizado, uma CU colocalizada (colCU), e similares, e a Gravura de referência incluindo o bloco vizinho temporal pode ser denominada como uma Gravura colocalizada (colPic). Por exemplo, o interpreditor 221 pode configurar uma lista de candidato de informações de movimento com base em bloco vizinhos e gerar informações que indicam qual candidato é usado para derivar um vetor de movimento e/ou um índice de Gravura de referência do bloco atual. A interpredição pode ser realizada com base em vários modos de predição. Por exemplo, no caso de um modo de omissão e um modo de união, o interpreditor 221 pode usar informações de movimento do bloco vizinho como informações de movimento do bloco atual. No modo de omissão, diferentemente do modo de união, o sinal residual pode não ser transmitido. No caso do modo de predição de vetor de movimento (MVP), o vetor de movimento do bloco vizinho pode ser usado como um vetor de movimento preditor e o vetor de movimento do bloco atual pode ser indicado sinalizando-se uma diferença de vetor de movimento.
[071] O preditor 220 pode gerar um sinal de predição com base em vários métodos de predição descritos abaixo. Por exemplo, o preditor pode não somente aplicar uma intrapredição ou uma interpredição para predizer um bloco, mas também aplicar simultaneamente tanto intrapredição como interpredição. Isso pode ser denominado como inter e intrapredição combinadas (CIIP). Além disso, o preditor pode se basear em um modo de predição de cópia intrabloco (IBC) ou um modo de palete para predição de um bloco. O modo de predição de IBC ou o modo de palete podem ser usados para codificação de imagem/vídeo de conteúdo ou similares, por exemplo, codificação de conteúdo de tela (SCC). O IBC basicamente realiza uma predição na Gravura atual, mas pode ser realizado similarmente para interpredição caracterizado pelo fato de um bloco de referência ser derivado na Gravura atual. Ou seja, o IBC pode usar pelo menos uma das técnicas de interpredição descritas neste documento. O modo de palete pode ser considerado como um exemplo de intracodificação ou intrapredição. Quando o modo de palete for aplicado, um valor de amostra dentro de uma Gravura pode ser sinalizado com base nas informações sobre a tabela de palete e o índice de palete.
[072] O sinal de predição gerado pelo preditor (incluindo o interpreditor 221 e/ou o intrapreditor 222) pode ser usado para gerar um sinal reconstruído ou gerar um sinal residual. O transformador 232 pode gerar coeficientes de transformada aplicando-se uma técnica de transformada ao sinal residual. Por exemplo, a técnica de transformada pode incluir pelo menos uma dentre uma transformada discreta de cosseno (DCT), uma transformada discreta de seno (DST), uma transformada de karhunen-loève (KLT), uma transformada baseada em gráfico (GBT), ou uma transformada condicionalmente não linear (CNT). No presente documento, a GBT significa uma transformada de um gráfico quando as informações de relação entre pixels forem representadas pelo gráfico. A CNT se refere a uma transformada gerada com base em um sinal de predição gerado usando todos os pixels previamente reconstruídos. Além disso, o processo de transformada pode ser aplicado a blocos de pixel quadrado tendo o mesmo tamanho ou pode ser aplicado a blocos tendo um tamanho variável ao invés de quadrado.
[073] O quantizador 233 pode quantizar os coeficientes de transformada e transmiti-los ao codificador de entropia 240 e o codificador de entropia 240 pode codificar o sinal quantizado (informações sobre os coeficientes de transformada quantizados) e emitir um fluxo de bits. As informações sobre os coeficientes de transformada quantizados podem ser referidas como informações residuais. O quantizador 233 pode rearranjar os coeficientes de transformada quantizados tipo bloco em uma forma de vetor unidimensional com base em uma ordem de varredura de coeficiente e gerar informações sobre os coeficientes de transformada quantizados com base nos coeficientes de transformada quantizados na forma de vetor unidimensional. As informações em coeficientes de transformada podem ser geradas. O codificador de entropia 240 pode realizar vários métodos de codificação como, por exemplo, Golomb exponencial, codificação de comprimento variável adaptativa de contexto (CAVLC), codificação aritmética binária adaptativa de contexto (CABAC), e similares. O codificador de entropia 240 pode codificar as informações necessárias para reconstrução de vídeo/imagem diferentes dos coeficientes de transformada quantizados (ex. valores de elementos de sintaxe, etc.) juntos ou separadamente. As informações codificadas (ex. informações de vídeo/imagem codificadas) podem ser transmitidas ou armazenadas em unidades de NALs (camada de abstração de rede) sob a forma de um fluxo de bits. As informações de vídeo/imagem podem incluir, ainda, informações em vários conjuntos de parâmetros como um conjunto de parâmetro de adaptação (APS), um conjunto de parâmetro de Gravura (PPS), um conjunto de parâmetro de sequência (SPS), ou um conjunto de parâmetro de vídeo (VPS). Além disso, as informações de vídeo/imagem podem incluir, ainda, informações de restrição gerais. Neste documento, informações e/ou elementos de sintaxe transmitidos/sinalizados a partir do aparelho de codificação ao aparelho de decodificação podem ser incluídos em informações de vídeo/Gravura. As informações de vídeo/imagem podem ser codificadas através do procedimento de codificação descrito acima e incluídas no fluxo de bits. O fluxo de bits pode ser transmitido por uma rede ou pode ser armazenado em uma mídia de armazenamento digital. A rede pode incluir uma rede de radiodifusão e/ou uma rede de comunicação, e a mídia de armazenamento digital pode incluir várias mídias de armazenamento como USB, SD, CD, DVD, Blu-ray, HDD, SSD, e similares. Um transmissor (não mostrado) que transmite um sinal emitido a partir do codificador de entropia 240 e/ou uma unidade de armazenamento (não mostrada) que armazena o sinal pode ser incluído como elemento interno/externo do aparelho de codificação 200, e, alternativamente, o transmissor pode ser incluído no codificador de entropia 240.
[074] Os coeficientes de transformada quantizados emitidos a partir do quantizador 233 podem ser usados para gerar um sinal de predição. Por exemplo, o sinal residual (bloco residual ou amostras residuais) pode ser reconstruído aplicando- se desquantização e transformada inversa aos coeficientes de transformada quantizados através do desquantizador 234 e do transformador inverso 235. O adicionador 250 adiciona o sinal residual reconstruído ao sinal de predição emitido a partir do interpreditor 221 ou do intrapreditor 222 para gerar um sinal reconstruído (Gravura reconstruída, bloco reconstruído, arranjo de amostra reconstruída). Se não existir um residual para o bloco a ser processado, tal como um caso onde o modo de omissão é aplicado, o bloco predito pode ser usado como o bloco reconstruído. O adicionador 250 pode ser denominado como um reconstrutor ou um gerador de bloco reconstruído. O sinal reconstruído gerado pode ser usado para intrapredição de um próximo bloco a ser processado na Gravura atual e pode ser usado para interpredição de uma próxima Gravura através da filtragem conforme descrito abaixo.
[075] Entretanto, o mapeamento de luma com escalonamento de croma (LMCS) pode ser aplicado durante codificação e/ou reconstrução de Gravura.
[076] O filtro 260 pode aperfeiçoar a qualidade de imagem subjetiva/objetiva aplicando-se filtragem ao sinal reconstruído. Por exemplo, o filtro 260 pode gerar uma Gravura reconstruída modificada aplicando-se vários métodos de filtragem à Gravura reconstruída e armazenar a Gravura reconstruída modificada na memória 270, especificamente, um DPB da memória 270. Os vários métodos de filtragem podem incluir, por exemplo, filtragem de desbloqueio, um deslocamento adaptativo de amostra, um filtro de laço adaptativo, um filtro bilateral, e similares. O filtro 260 pode gerar várias informações relacionadas à filtragem e transmitir as informações geradas ao codificador de entropia 240 conforme descrito mais adiante na descrição de cada método de filtragem. As informações relacionadas à filtragem podem ser codificadas pelo codificador de entropia 240 e emitidas sob a forma de um fluxo de bits.
[077] A Gravura reconstruída modificada transmitida à memória 270 pode ser usada como a Gravura de referência no interpreditor 221. Quando a interpredição for aplicada através do aparelho de codificação, incompatibilidade de predição entre o aparelho de codificação 200 e o aparelho de decodificação pode ser evitada e a eficiência de codificação pode ser aperfeiçoada.
[078] O DPB da memória 270 DPB pode armazenar a Gravura reconstruída modificada para uso como uma Gravura de referência no interpreditor 221. A memória 270 pode armazenar as informações de movimento do bloco a partir do qual as informações de movimento na Gravura atual são derivadas (ou codificadas) e/ou as informações de movimento dos blocos na Gravura que já foi reconstruída. As informações de movimento armazenadas podem ser transmitidas ao interpreditor 221 e usadas como as informações de movimento do bloco vizinho espacial ou as informações de movimento do bloco vizinho temporal. A memória 270 pode armazenar amostras reconstruídas de blocos reconstruídos na Gravura atual e pode transferir as amostras reconstruídas ao intrapreditor 222.
[079] A Figura 3 é um diagrama esquemático que ilustra uma conGravura de um aparelho de decodificação de vídeo/imagem ao qual as modalidades da presente documento podem ser aplicadas.
[080] Referindo-se à Figura 3, o aparelho de decodificação 300 pode incluir um decodificador de entropia 310, um processador de residual 320, um preditor 330, um adicionador 340, um filtro 350, uma memória 360. O preditor 330 pode incluir um interpreditor 331 e um intrapreditor 332. O processador de residual 320 pode incluir um desquantizador 321 e um transformador inverso 321. O decodificador de entropia 310, o processador de residual 320, o preditor 330, o adicionador 340, e o filtro 350 podem ser configurados por um componente de hardware (ex. um chipset de decodificador ou um processador) de acordo com uma modalidade. Além disso, a memória 360 pode incluir uma memória temporária de Gravura decodificada (DPB) ou pode ser configurada por uma mídia de armazenamento digital. O componente de hardware pode incluir, ainda, a memória 360 como um componente interno/externo.
[081] Quando um fluxo de bits incluindo informações de vídeo/imagem for inserido, o aparelho de decodificação 300 pode reconstruir uma imagem correspondente a um processo no qual as informações de vídeo/imagem são processadas no aparelho de codificação da Figura 2. Por exemplo, o aparelho de decodificação 300 pode derivar unidades/blocos com base nas informações relacionadas à partição de bloco obtidas a partir do fluxo de bits. O aparelho de decodificação 300 pode realizar decodificação usando um processador aplicado no aparelho de codificação. Logo, o processador de decodificação pode ser uma unidade de codificação, por exemplo, e a unidade de codificação pode ser particionada de acordo com uma estrutura de árvore quaternária, estrutura de árvore binária e/ou estrutura de árvore terciária a partir da unidade de árvore de codificação ou a maior unidade de codificação. Uma ou mais unidades de transformada podem ser derivadas a partir da unidade de codificação. O sinal de imagem reconstruída decodificado e emitido através do aparelho de decodificação 300 pode ser reproduzido através de um aparelho de reprodução.
[082] O aparelho de decodificação 300 pode receber um sinal emitido a partir do aparelho de codificação da Figura 2 sob a forma de um fluxo de bits, e o sinal recebido pode ser decodificado através do decodificador de entropia 310. Por exemplo, o decodificador de entropia 310 pode analisar o fluxo de bits para derivar informações (ex. informações de vídeo/imagem) necessárias para reconstrução de imagem (ou reconstrução de Gravura). As informações de vídeo/imagem podem incluir, ainda, informações em vários conjuntos de parâmetros como um conjunto de parâmetro de adaptação (APS), um conjunto de parâmetro de Gravura (PPS), um conjunto de parâmetro de sequência (SPS), ou um conjunto de parâmetro de vídeo (VPS). Além disso, as informações de vídeo/imagem podem incluir, ainda, informações de restrição geral. O aparelho de decodificação pode decodificar, ainda, uma Gravura com base nas informações no conjunto de parâmetro e/ou as informações de restrição geral. As informações sinalizadas/recebidas e/ou elementos de sintaxe descritos posteriormente neste documento que podem ser decodificadas podem decodificar o procedimento de decodificação e obtidas a partir do fluxo de bits. Por exemplo, o decodificador de entropia 310 decodifica as informações no fluxo de bits com base em um método de codificação tal como codificação exponencial de Golomb, CAVLC, ou CABAC, e elementos de sintaxe emitidos necessários para reconstrução de imagem e valores quantizados e coeficientes de transformada para residual. De modo mais específico, o método de decodificação de entropia de CABAC pode receber um bin correspondente a cada elemento de sintaxe no fluxo de bits, determinar um modelo de contexto usando informações de elemento de sintaxe alvo de decodificação, informações de decodificação de um bloco alvo de decodificação ou informações de um símbolo/bin decodificadas em estágio prévio, e realizar uma decodificação aritmética no bin predizendo-se uma probabilidade de ocorrência de um bin de acordo com o modelo de contexto determinado, e gerar um símbolo correspondente ao valor de cada elemento de sintaxe. Nesse caso, o método de decodificação de entropia de CABAC pode atualizar o modelo de contexto utilizando- se as informações do símbolo/bin decodificados para um modelo de contexto de um próximo símbolo/bin após determinar o modelo de contexto. As informações relacionadas à predição dentre as informações decodificadas pelo decodificador de entropia 310 podem ser proporcionadas ao preditor (o interpreditor 332 e o intrapreditor 331), e o valor residual no qual uma decodificação de entropia foi realizada no decodificador de entropia 310, ou seja, os coeficientes de transformada quantizada e informações de parâmetro relacionadas, podem ser emitidos ao processador de residual 320. O processador de residual 320 pode derivar o sinal residual (o bloco residual, as amostras residuais, o arranjo de amostra residual). Além disso, as informações sobre filtragem dentre informações decodificadas pelo decodificador de entropia 310 podem proporcionadas ao filtro 350. Entretanto, um receptor (não mostrado) para receber um sinal emitido a partir do aparelho de codificação pode ser configurado, ainda, como um elemento interno/externo do aparelho de decodificação 300, ou o receptor pode ser um componente do decodificador de entropia 310. Entretanto, o aparelho de decodificação de acordo com este documento pode ser referido como um aparelho de decodificação de vídeo/imagem/Gravura, e o aparelho de decodificação pode ser classificado em um decodificador de informações (decodificador de informações de vídeo/imagem/Gravura) e um decodificador de amostra (decodificador de amostra de vídeo/imagem/Gravura sample). O decodificador de informações podem incluir o decodificador de entropia 310, e o decodificador de amostra pode incluir pelo menos um dentre o desquantizador 321, o transformador inverso 322, o adicionador 340, o filtro 350, a memória 360, o interpreditor 332, e o intrapreditor 331.
[083] O desquantizador 321 pode desquantizar os coeficientes de transformada quantizados e emitir os coeficientes de transformada. O desquantizador 321 pode rearranjar os coeficientes de transformada quantizados sob a forma de uma forma de bloco bidimensional. Nesse caso, o rearranjo pode ser realizado com base na ordem de varredura de coeficiente realizada no aparelho de codificação. O desquantizador 321 pode realizar uma desquantização nos coeficientes de transformada quantizados utilizando-se um parâmetro de quantização (ex. informações de tamanho de etapa de quantização) e obtém coeficientes de transformada.
[084] O transformador inverso 322 transforma inversamente os coeficientes de transformada para obter um sinal residual (bloco residual, arranjo de amostra residual).
[085] O preditor pode realizar uma predição no bloco atual e gerar um bloco predito incluindo amostras de predição para o bloco atual. O preditor pode determinar se intrapredição ou interpredição é aplicada ao bloco atual com base nas informações na predição emitida a partir do decodificador de entropia 310 e pode determinar um modo de intra/interpredição específico.
[086] O preditor 320 pode gerar um sinal de predição com base em vários métodos de predição descritos mais adiante. Por exemplo, o preditor pode não somente aplicar intrapredição ou interpredição para predizer um bloco, mas também aplicar simultaneamente intrapredição e interpredição. Isso pode ser denominado como inter e intrapredição combinadas (CIIP). Além disso, o preditor pode se basear em um modo de intrapredição de cópia de bloco (IBC) ou um modo de palete para predição de um bloco. O modo de predição IBC ou modo de palete pode ser usado para codificação de imagem/vídeo de conteúdo de um jogo ou similares, por exemplo, codificação de conteúdos em tela (SCC). O IBC basicamente realiza predição na Gravura atual, mas pode ser realizado similarmente à interpredição caracterizada pelo fato de que um bloco de referência é derivado na Gravura atual. Ou seja, o IBC pode usar pelo menos uma das técnicas de interpredição descritas neste documento. O modo de palete pode ser considerado como um exemplo de intracodificação ou intrapredição. Quando o modo de palete for aplicado, um valor de amostra em uma Gravura pode ser sinalizado com base nas informações na tabela de palete e no índice de palete.
[087] O intrapreditor 331 pode predizer o bloco atual referindo-se às amostras na Gravura atual. As amostras referidas podem estar localizadas na vizinhança do bloco atual ou podem estar localizadas separadas de acordo com o modo de predição. Na intrapredição, os modos de predição podem incluir uma pluralidade de modos não direcionais e uma pluralidade de modos direcionais. O intrapreditor 331 pode determinar o modo de predição aplicado ao bloco atual utilizando-se um modo de predição aplicado a um bloco vizinho.
[088] O interpreditor 332 pode derivar a bloco predito para o bloco atual com base em um bloco de referência (arranjo de amostra de referência) especificado por um vetor de movimento em uma Gravura de referência. Nesse caso, a fim de reduzir a quantidade de informações de movimento transmitidas no modo de interpredição, as informações de movimento podem ser preditas em unidades de blocos, sub-blocos, ou amostras com base na correlação de informações de movimento entre o bloco vizinho e o bloco atual. As informações de movimento podem incluir um vetor de movimento e um índice de Gravura de referência. As informações de movimento podem incluir, ainda informações de direção de interpredição (predição L0, predição L1, predição Bi, etc.). No caso de interpredição, o bloco vizinho pode incluir um bloco vizinho espacial presente na Gravura atual e um bloco vizinho temporal presente na Gravura de referência. Por exemplo, o interpreditor 332 pode configurar uma lista de candidato de informações de movimento com base em blocos vizinhos e derivar um vetor de movimento do bloco atual e/ou um índice de Gravura de referência com base nas informações de seleção de candidato recebidas. A interpredição pode ser realizada com base em vários modos de predição, e as informações sobre a predição podem incluir informações que indicam um modo de interpredição para o bloco atual.
[089] O adicionador 340 pode gerar um sinal reconstruído (Gravura reconstruída, bloco reconstruído, arranjo de amostra reconstruído) adicionando-se o sinal residual obtido ao sinal de predição (bloco predito, arranjo de amostra predita) emitido a partir do preditor (incluindo o interpreditor 332 e/ou o intrapreditor 331). Se não houver um residual para o bloco a ser processado, tal como quando o modo de omissão for aplicado, o bloco predito pode ser usado como o bloco reconstruído.
[090] O adicionador 340 pode ser denominado como reconstrutor ou um gerador de bloco reconstruído. O sinal reconstruído gerado pode ser usado para intrapredição de um próximo bloco a ser processado na Gravura atual, pode ser emitido através de filtragem conforme descrito abaixo, ou pode ser usado para interpredição de uma próxima Gravura.
[091] Entretanto, um mapeamento de luma com escalonamento de croma (LMCS) pode ser aplicado no processo de decodificação de Gravura.
[092] O filtro 350 pode aperfeiçoar a qualidade de imagem subjetiva/objetiva aplicando-se filtragem ao sinal reconstruído. Por exemplo, o filtro 350 pode gerar uma Gravura reconstruída modificada aplicando-se vários métodos de filtragem à Gravura reconstruída e armazenar a Gravura reconstruída modificada na memória 360, especificamente, um DPB da memória 360. Os vários métodos de filtragem podem incluir, por exemplo, filtragem pro desbloqueio, um deslocamento adaptativo de amostra, um filtro de laço adaptativo, um filtro bilateral, e similares.
[093] A Gravura reconstruída (modificada) armazenada no DPB da memória 360 pode ser usada como uma Gravura de referência no interpreditor 332. A memória 360 pode armazenar as informações de movimento do bloco a partir do qual as informações de movimento na Gravura atual são derivadas (ou decodificadas) e/ou as informações de movimento dos blocos na Gravura que já foram reconstruídas. As informações de movimento armazenadas podem ser transmitidas ao interpreditor 260 a fim de serem utilizadas como as informações de movimento do bloco vizinho espacial ou as informações de movimento do bloco vizinho temporal. A memória 360 pode armazenar amostras reconstruídas de blocos reconstruídos na Gravura atual e transferir as amostras reconstruídas ao intrapreditor 331.
[094] Na presente revelação, as modalidades descritas no filtro 260, o interpreditor 221, e o intrapreditor 222 do aparelho de codificação 200 podem ser iguais ou respectivamente aplicados a corresponder ao filtro 350, o interpreditor 332, e o intrapreditor 331 do aparelho de decodificação 300. O mesmo pode se aplicar à unidade 332 e ao intrapreditor 331.
[095] Entretanto, conforme descrito anteriormente, em realizar codificação de vídeo, realiza-se uma predição para acentuar a eficiência de compactação. De modo correspondente, um bloco de predição incluindo amostras de predição para um bloco atual, ou seja, um bloco alvo de codificação, pode ser gerado. Nesse caso, o bloco predito inclui amostras de predição em um domínio espacial (ou domínio de pixel). O bloco de predição é identicamente derivado no aparelho de codificação e no aparelho de decodificação. O aparelho de codificação pode aperfeiçoar a eficiência de codificação de imagem sinalizando-se informações residuais em um residual entre um bloco original e o bloco predito não um valor de amostra original do próprio bloco original ao aparelho de decodificação. O aparelho de decodificação pode derivar um bloco residual incluindo amostras residuais com base nas informações residuais, pode gerar um bloco reconstruído incluindo amostras reconstruídas adicionando-se o bloco residual e o bloco de predição, e pode gerar uma Gravura reconstruída incluindo o bloco reconstruído.
[096] As informações residuais podem ser geradas através de um procedimento de transformada e quantização. Por exemplo, o aparelho de codificação pode derivar o bloco residual entre o bloco original e o bloco predito, pode derivar coeficientes de transformada realizando-se um procedimento de transformada nas amostras residuais (arranjo de amostra residual) incluídas no bloco residual, pode derivar coeficientes de transformada quantizados realizando-se um procedimento de quantização nos coeficientes de transformada, e pode sinalizar informações residuais relacionadas ao aparelho de decodificação (através de um fluxo de bit). Nesse caso, as informações residuais podem incluir informações, tais como informações de valor, informações de localização, um esquema de transformada, um núcleo de transformada e um parâmetro de quantização dos coeficientes de transformada quantizados. O aparelho de decodificação pode realizar um procedimento de desquantização/transformada inversa com base nas informações residuais e pode derivar as amostras residuais (ou bloco residual). O aparelho de decodificação pode gerar a Gravura reconstruída com base no bloco de predição e no bloco residual. O aparelho de codificação também pode derivar o bloco residual realizando-se uma desquantização/transformada inversa nos coeficientes de transformada quantizados para a referência de interpredição de uma Gravura subsequente e pode gerar a Gravura reconstruída com base no bloco residual.
[097] A Figura 4 ilustra modos intradirecionais de 65 direções de predição.
[098] Referindo-se à Figura 4, modos de intrapredição tendo direcionalidade horizontal e modos de intrapredição tendo direcionalidade vertical podem ser classificados com base em um modo de intrapredição #34 tendo uma direção de predição diagonal superior esquerda. H e V na Figura 3 representam a direcionalidade horizontal e a direcionalidade vertical, respectivamente, e os números de -32 a 32 representam deslocamentos de 1/32 unidade em posições de grade de amostra. Os modos de intrapredição #2 a #33 têm a direcionalidade horizontal e os modos de intrapredição #34 a #66 têm direcionalidade vertical. Modo de intrapredição #18 e modo de intrapredição #50 representam um modo de intrapredição horizontal e um modo de intrapredição vertical, respectivamente. Os modos de intrapredição #2 podem ser denominados como um modo de intrapredição diagonal inferior esquerdo, o modo de intrapredição #34 pode ser denominado como um modo de intrapredição diagonal superior esquerdo e o modo de intrapredição #66 pode ser denominado como um modo de intrapredição diagonal superior direito.
[099] A Figura 5 é um diagrama para descrever um processo de derivar um modo de intrapredição de um bloco de croma atual de acordo com uma modalidade.
[0100] Na presente revelação, “bloco de croma”, “imagem de croma”, e similares, podem representar o mesmo significado de bloco de crominância, imagem de crominância, e similares, e, de modo correspondente, croma e crominância podem ser comumente usados. De modo similar, “bloco de luma”, “imagem de luma”, e similares, podem representar o mesmo significado de bloco de luminância, imagem de luminância, e similares, e, de modo correspondente, luma e luminância podem ser comumente usados.
[0101] Na presente revelação, um “bloco de croma atual” pode significar um bloco de componente de croma de um bloco atual, que é uma unidade de codificação atual, e um “bloco de luma atual” pode significar um bloco de componente de luma de um bloco atual, que é uma unidade de codificação atual. De modo correspondente, o bloco de luma atual e o bloco de croma atual correspondem um ao outro. No entanto, formatos de bloco e números de bloco do bloco de luma atual e do bloco de croma atual nem sempre são iguais, mas podem ser diferentes dependendo de um caso. Em alguns casos, o bloco de croma atual pode corresponder à região de luma atual, e, nesse caso, a região de luma atual pode incluir pelo menos um bloco de luma.
[0102] Na presente revelação, “modelo de amostra de referência” pode significar um conjunto de amostras de referência vizinhas a um bloco de croma atual para predizer o bloco de croma atual. O modelo de amostra de referência pode ser predefinido, ou informações para o modelo de amostra de referência podem ser sinalizadas ao aparelho de decodificação 300 a partir do aparelho de codificação 200.
[0103] Referindo-se à Figura 5, um conjunto de amostras com um bloco 4x4 vizinho em linha sombreada, que é um bloco de croma atual, representa um modelo de amostra de referência. Mostra-se na Figura 5 que o modelo de amostra de referência inclui uma amostra de referência de uma linha, mas a região de amostra de referência em uma região de luma correspondente ao modelo de amostra de referência inclui duas linhas.
[0104] Em uma modalidade, quando uma intracodificação de uma imagem de croma for realizada em Modelo TEST de Exploração Conjunta (JEM) usado em Equipe Conjunta para Exploração de Vídeo (JVET), Modelo Linear de Componente Cruzado (CCLM) pode ser usado. CCLM é um método de predizer um valor de pixel de uma imagem de croma com base em um valor de pixel de uma imagem de luma reconstruída, que se baseia na propriedade de alta correlação entre uma imagem de croma e uma imagem de luma.
[0105] A predição de CCLM de imagens de croma Cb e Cr pode se basear na equação abaixo.
Figure img0001
[0106] No presente documento, predc (i, j) significa a imagem de croma Cb ou Cr a ser predita, RecL’(i, j) significa uma imagem de luma a ser reconstruída que é ajustada a um tamanho do bloco de croma e (i, j) significa uma coordenada de um pixel. Em formato de cor 4:2:0, visto que um tamanho de imagem de luma é o dobro daquele de uma imagem de croma, RecL’ de um tamanho do bloco de croma deve ser gerado através de amostragem descendente, e, de modo correspondente, um pixel de imagem de luma a ser usado na imagem de croma predc (i, j) também pode usar pixels vizinhos além de RecL(2i, 2j). predc (i, j) pode ser representado como uma amostra de luma amostrada descendentemente. Além disso, α e β podem ser denominados como um modelo linear ou parâmetro de CCLM. Particularmente, α pode ser denominado como um fator de escalonamento, e β pode ser denominado como um deslocamento. As informações de modo de predição que indicam se a predição de CCLM é aplicada ao bloco atual podem ser geradas no aparelho de codificação e transmitidas ao aparelho de decodificação, e o parâmetro de CCLM pode ser calculado no aparelho de codificação e no aparelho de decodificação com base em uma amostra reconstruída vizinha (ou modelo) da mesma forma.
[0107] Entretanto, por exemplo, predc (i, j) pode ser derivado utilizando-se 6 pixels vizinhos conforme representado na equação abaixo.
Figure img0002
[0108] Além disso, conforme mostrado na área sombreada da Figura 3, α e β representam uma correlação cruzada e uma diferença de valores médios entre o modelo de vizinho de bloco de croma e o modelo de vizinho de bloco de luma Cb ou Cr, e α e β são representados como a Equação 3 abaixo.
Figure img0003
[0109] No presente documento, tL significa uma amostra de referência vizinha de um bloco de luma correspondente a uma imagem de croma atual, tC significa uma amostra de referência vizinha de um bloco de croma atual ao qual a codificação é aplicada atualmente, e (i, j) significa uma posição de um pixel. Além disso, M(A) significa uma média de A pixels.
[0110] Entretanto, amostras para cálculo de parâmetro (isto é, por exemplo, α e β) para predição de CCLM descrita anteriormente podem ser selecionadas conforme abaixo.
[0111] - No caso onde um bloco de croma atual é um bloco de croma de tamanho NxN, um total de 2N (N horizontal e N vertical) pares de amostras de referência vizinhas (luma e croma) do bloco de croma atual podem ser selecionados.
[0112] - No caso onde a bloco de croma atual é um bloco de croma de tamanho NxM ou tamanho MxN (aqui, N <= M), um total de 2N (N horizontal e N vertical) pares de amostras de referência vizinhas do bloco de croma atual podem ser selecionados. Entretanto, visto que M é maior que N (por exemplo, M = 2N ou 3N, etc.), dentre M amostras, N pares de amostra podem ser selecionados através de subamostragem.
[0113] Alternativamente, no caso onde uma predição de CCLM é realizada com base em uma pluralidade de modos de CCLM, ou seja, no caso onde um Modo Linear Multi-Direcional (MDLM) é aplicado, as amostras para cálculo de parâmetro podem ser selecionadas conforme abaixo.
[0114] - No caso onde um bloco de croma atual é um bloco de croma de tamanho NxN ao qual a predição de CCLM existente, ou seja, modo Linear_Model_Left Top (LM_LT) é aplicado, um total de 2N (N horizontal e N vertical) pares de amostras de referência vizinhas (luma e croma) do bloco de croma atual podem ser selecionados. No presente documento, o modo LM_LT também pode ser denominado como modo Linear_Model_Left_Above (LM_LA).
[0115] - No caso onde um bloco de croma atual é um bloco de croma de tamanho NxM ou tamanho MxN (aqui, N <= M) ao qual o modo LM_LT é aplicado, um total de 2N (N horizontal e N vertical) pares de amostras de referência vizinhas do bloco de croma atual podem ser selecionados. Entretanto, visto que M é maior que N (por exemplo, M = 2N ou 3N, etc.), dentre M amostras, N pares de amostra podem ser selecionados através de subamostragem.
[0116] - No caso onde um bloco de croma atual é um bloco de croma de NxM ao qual MDLM, ou seja, modo de predição de CCLM exceto pelo modo LM_LT é aplicado, modo Linear_Model_Top (LM_T) pode ser aplicado ao bloco de croma atual, e um total de 2N pares de amostras de referência vizinhas superiores podem ser selecionados. No presente documento, o modo LM_T também pode ser denominado como modo Linear_Model_Above (LM_A).
[0117] - No caso onde um bloco de croma atual é um bloco de croma de MxN ao qual MDLM, ou seja, modo de predição de CCLM exceto pelo modo LM_LT é aplicado, modo Linear_Model_Left (LM_L) pode ser aplicado ao bloco de croma atual, e um total de 2N pares de amostras de referência vizinhas esquerdos podem ser selecionados.
[0118] Entretanto, MDLM pode representar a predição de CCLM realizada com base no modo de predição de CCLM selecionado dentre uma pluralidade de modos de predição de CCLM. A pluralidade de modos de predição de CCLM pode incluir o modo LM_L, o modo LM_T e o modo LM_LT. O modo LM_T pode representar o modo de predição de CCLM que realiza CCLM usando somente uma amostra de referência do bloco atual superior, e o modo LM_L pode representar o modo de predição de CCLM que realiza CCLM usando somente uma amostra de referência esquerda do bloco atual. Além disso, o modo LM_LT pode representar o modo de predição de CCLM que realiza CCLM usando uma amostra de referência superior e uma amostra de referência esquerda do bloco atual como a predição de CCLM existente. A descrição detalhada para MDLM será descrita abaixo.
[0119] A Figura 6 ilustra 2N amostras de referência para cálculo de parâmetro para predição de CCLM descrita acima. Referindo-se à Figura 6, 2N pares de amostra de referência são mostrados, que são derivados para cálculo de parâmetro para a predição de CCLM. Os 2N pares de amostra de referência podem incluir 2N amostras de referência adjacentes ao bloco de croma atual e 2N amostras de referência adjacentes ao bloco de luma atual.
[0120] Conforme descrito anteriormente, 2N pares de amostra podem ser derivados, e no caso onde os parâmetros de CCLM α e β são calculados usando a Equação 3 usando o par de amostra descrito acima, a operação de números conforme representado na Tabela 1 abaixo pode ser exigida.
Figure img0004
[0121] Referindo-se à Tabela 1 acima, por exemplo, no caso de um bloco de croma de tamanho 4x4, 21 operações de multiplicação e 31 operações de adição podem ser exigidas para calcular o parâmetro de CCLM, e no caso de um bloco de croma de tamanho 32x32, 133 operações de multiplicação e 255 operações de adição podem ser exigidas para calcular o parâmetro de CCLM. Ou seja, à medida que o tamanho do bloco de croma aumenta, uma quantidade de operação exigida para calcular o parâmetro de CCLM aumenta rapidamente, que pode ser diretamente conectada a um problema de retardo em implementação de hardware. Particularmente, visto que o parâmetro de CCLM deve ser derivado através de cálculo mesmo no aparelho de decodificação, a quantidade de operação pode ser conectada a um problema de retardo em implementação de hardware do aparelho de decodificação e aumento dos custos de implementação.
[0122] Entretanto, em VTM 3.0, o parâmetro de CCLM pode ser calculado utilizando-se uma inclinação de variação de dois pares de amostras de luma e croma para diminuir as operações de multiplicação e adição em calcular α e β. Por exemplo, o parâmetro de CCLM pode ser calculado pela equação a seguir.
Figure img0005
[0123] No presente documento, (xA, yA) pode representar valores de amostra de uma amostra de luma yA cujo valor de luma é o menor dentre as amostras de referência vizinhas de um bloco atual para calcular o parâmetro de CCLM e uma amostra de croma xA que é um par da amostra de luma, e (xB, yB) pode representar valores de amostra de uma amostra de luma yB cujo valor de luma e o maior dentre as amostras de referência vizinhas de um bloco atual para calcular o parâmetro de CCLM e uma amostra de croma xB que é um par da amostra de luma. Ou seja, em outras palavras, yA pode representar uma amostra de luma cujo valor de luma é o menor dentre as amostras de referência vizinhas de um bloco atual, xA pode representar uma amostra de croma que é um par da amostra de luma yA, yB pode representar uma amostra de luma cujo valor de luma é o maior dentre as amostras de referência vizinhas de um bloco atual, e xB pode representar uma amostra de croma que é um par da amostra de luma yB.
Figure img0006
[0124] A Tabela 2 acima ilustra o parâmetro de CCLM derivado por um método de cálculo simplificado.
[0125] Quando o parâmetro de CCLM for calculado utilizando-se a equação descrita anteriormente, há uma vantagem em que a quantidade operações de multiplicação e adição pode ser reduzida significativamente em comparação ao método existente, mas visto que um valor mínimo e um valor máximo devem ser determinados dentre amostras de luma vizinhas de um bloco atual, adiciona-se uma operação de comparação. Ou seja, a fim de determinar um valor mínimo e um valor máximo de amostra em 2N amostras vizinhas, 4N operações de comparação são exigidas, e a adição das operações de comparação pode causar um retardo em implementação de hardware.
[0126] Além disso, em realizar predição de CCLM, LM multidirecional (MDLM), que é adotado em VTM 3.0, pode ser realizado.
[0127] A Figura 7 ilustra om modo LM_A (Linear_Model_Above) e o modo LM_L (Linear_Model_Left). O aparelho de codificação e o aparelho de decodificação podem realizar uma predição de CCLM à qual o modo LM_A e o modo LM_L. O modo LM_A pode representar o modo de predição de CCLM para realizar CCLM utilizando- se uma amostra de referência superior de um bloco atual. Nesse caso, conforme mostrado na Figura 7, a predição de CCLM pode ser realizada com base em amostras de referência superiores que são estendidas duas vezes das amostras de referência superiores na predição de CCLM existente a um lado direito. O modo LM_A também pode ser denominado modo Linear_Model_Top (LM_T). Ademais, o modo LM_L pode representar o modo de predição de CCLM para realizar CCLM utilizando-se somente uma amostra de referência esquerda do bloco atual. Nesse caso, conforme mostrado na Figura 7, a predição de CCLM pode ser realizada com base nas amostras de referência esquerdas que são estendidas duas vezes das amostras de referência esquerdas na predição de CCLM existente a um lado inferior. Entretanto, o modo de realizar a predição de CCLM com base na predição de CCLM existente, ou seja, as amostras de referência superiores e as amostras de referência esquerdas do bloco atual podem ser representadas como modo LM_LA ou modo LM_LT. Os parâmetros α e β em MDLM incluindo uma pluralidade de modos de predição de CCLM podem ser calculados utilizando-se uma inclinação de variação de dois pares de amostra de luma e croma descritos acima. De modo correspondente, muitas operações de comparação são exigidas em calcular parâmetros para o MDLM, e a adição de operações de comparação pode causar um retardo em implementação de hardware. Particularmente, no caso onde os parâmetros de CCLM α e β são calculados através da Equação 4 que usa 2N pares de amostra descritos acima, 4N operações de comparação são exigidas. Ou seja, no caso de bloco de croma 4x4, 16 operações de comparação são exigidas para calcular um parâmetro de CCLM, e no caso de bloco de croma 32x32, 128 operações de comparação são exigidas para calcular o parâmetro de CCLM. Ou seja, à medida que o bloco de croma aumenta, uma quantidade de operação exigida para calcular um parâmetro de CCLM aumenta rapidamente, que pode ser diretamente conectada a um problema de retardo em implementação de hardware. Particularmente, visto que o parâmetro de CCLM deve ser derivado através de cálculo mesmo no aparelho de decodificação, a adição de operações de comparação pode ser conectada a um problema de retardo em implementação de hardware do aparelho de decodificação e aumento de custos de implementação.
[0128] De modo correspondente, exige-se um método de reduzir o retardo, e, portanto, a presente revelação propõe uma modalidade para reduzir a complexidade operacional para derivar parâmetros de CCLM, e através disso, reduzir os custos e complexidade de hardware e tempo do procedimento de decodificação.
[0129] A presente modalidade pode reduzir a complexidade operacional para derivar parâmetros de CCLM, e através disso, pode reduzir os custos e complexidade de hardware e tempo do procedimento de decodificação.
[0130] Como um exemplo, a fim de solucionar o problema de aumento de quantidade de operação de parâmetro de CCLM como o aumento de tamanho do bloco de croma descrito acima, pode-se propor uma modalidade para calcular um parâmetro de CCLM selecionando-se um bloco de croma pixel vizinho, após configurar um limite superior de seleção de amostra vizinha Nth conforme descrito abaixo. Nth também pode ser representado como um número máximo de amostra vizinha. Por exemplo, Nth pode ser definido como 2, 4, 8 ou 16.
[0131] O procedimento de cálculo de parâmetro de CCLM de acordo com a presente modalidade pode ser conforme abaixo.
[0132] - No caso onde a bloco de croma atual é um bloco de croma de tamanho NxN e Nth >= N, pode-se selecionar um total 2N (N horizontal e N vertical) pares de amostras de referência vizinhas do bloco de croma atual.
[0133] - No caso onde a bloco de croma atual é um bloco de croma de tamanho NxN e Nth < N, pode-se selecionar um total 2*Nth (2*Nth horizontal e 2*Nth vertical) pares de amostras de referência vizinhas do bloco de croma atual.
[0134] - No caso onde a bloco de croma atual é um bloco de croma de tamanho NxM ou tamanho MxN (aqui, N <= M) e Nth >= N, pode-se selecionar um total 2N (N horizontal e N vertical) pares de amostras de referência vizinhas do bloco de croma atual. Visto que M é maior que N (por exemplo, M = 2N ou 3N, etc.), dentre M amostras, N pares de amostra podem ser selecionados através de subamostragem.
[0135] - No caso onde um bloco de croma atual é um bloco de croma de tamanho NxM ou tamanho MxN (aqui, N <= M) e Nth < N, pode-se selecionar um total 2*Nth (2*Nth horizontal e 2*Nth vertical) pares de amostras de referência vizinhas do bloco de croma atual. Visto que M é maior que N (por exemplo, M = 2N ou 3N, etc.), dentre M amostras, Nth pares de amostra podem ser selecionados através de subamostragem.
[0136] Conforme descrito anteriormente, de acordo com a presente modalidade, um número de amostra de referência vizinha para cálculo de parâmetro de CCLM pode ser limitado definindo-se Nth que é um número máximo de número de amostras vizinhas selecionado, e através disso, um parâmetro de CCLM pode ser calculado através de relativamente menos cálculos mesmo em um bloco de croma de tamanho grande.
[0137] Além disso, no caso de definir Nth como um número relativamente pequeno (por exemplo, 4 ou 8), em implementação de hardware de cálculo de parâmetro de CCLM, uma operação de pior caso (por exemplo, bloco de croma de tamanho 32x32) pode ser evitada, e, portanto, pode-se reduzir um número de portão de hardware exigido em comparação ao pior caso, e através disso, também há um efeito de reduzir custos de implementação de hardware.
[0138] Por exemplo, no caso onde Nth é 2, 4 e 8, uma quantidade de cálculo de parâmetro de CCLM para um tamanho do bloco de croma pode ser representada conforme a tabela a seguir.
Figure img0007
[0139] Entretanto, Nth pode ser derivado como um valor predeterminado no aparelho de codificação e no aparelho de decodificação sem a necessidade de transmitir informações adicionais que representam Nth. Alternativamente, informações adicionais que representam Nth podem ser transmitidas em uma unidade de uma Unidade de Codificação (CU), uma fatia, uma Gravura ou uma sequência, e Nth pode ser derivado com base nas informações adicionais que representam Nth. As informações adicionais que representam Nth podem ser geradas e codificadas no aparelho de codificação e podem ser transmitidas ou sinalizadas ao aparelho de decodificação. Doravante, a transmissão ou sinalização de valor Nth podem representar a transmissão ou sinalização das informações que representam Nth a partir do aparelho de codificação ao aparelho de decodificação.
[0140] Por exemplo, no caso onde as informações adicionais que representam Nth são transmitidas em uma unidade de CU, quando um modo de intrapredição de um bloco de croma atual for o modo de CCLM, conforme descrito abaixo, pode-se propor um método para analisar um elemento de sintaxe cclm_reduced_sample_flag e realizar um procedimento de cálculo de parâmetro de CCLM. cclm_reduced_sample_flag pode representar um indicador de amostra reduzida de elemento de sintaxe de CCLM.
[0141] - No caso onde cclm_reduced_sample_flag é 0 (falso), um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra vizinha de CCLM existente.
[0142] - No caso onde cclm_reduced_sample_flag é 1 (verdadeiro), Nth é definido para 2, e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra vizinha proposto na presente modalidade descrita anteriormente.
[0143] Alternativamente, no caso onde as informações adicionais que representam Nth são transmitidas em uma unidade de fatia, Gravura ou sequência, conforme descrito abaixo, valor Nth pode ser decodificado com base nas informações adicionais transmitidas através de uma sintaxe de alto nível (HLS). As informações adicionais que representam Nth podem ser codificadas no aparelho de codificação e incluídas em um fluxo de bits, e, então, transmitidas.
[0144] Por exemplo, as informações adicionais sinalizadas através de um cabeçalho de fatia podem ser representadas conforme a tabela a seguir.
Figure img0008
[0145] cclm_reduced_sample_num pode representar um elemento de sintaxe das informações adicionais que representam Nth.
[0146] Alternativamente, por exemplo, as informações adicionais sinalizadas através de um Conjunto de Parâmetros de Gravura (PPS) podem ser representadas conforme a tabela a seguir.
Figure img0009
Figure img0010
[0147] Alternativamente, por exemplo, as informações adicionais sinalizadas através de um Conjunto de Parâmetros de Sequência (SPS) podem ser representadas conforme a tabela a seguir.
Figure img0011
[0148] Valor Nth, que é derivado com base no valor cclm_reduced_sample_num (isto é, um valor derivado decodificando-se cclm_reduced_sample_num) transmitido através do cabeçalho de fatia, do PPS ou do SPS, pode ser derivado conforme representado na tabela a seguir.
Figure img0012
[0149] Por exemplo, referindo-se à Tabela 7 acima, Nth pode ser derivado com base em cclm_reduced_sample_num. No caso onde valor cclm_reduced_sample_num é 0, Nth pode ser derivado como 2, no caso onde valor cclm_reduced_sample_num é 1, Nth pode ser derivado como 4, no caso onde o valor cclm_reduced_sample_num é 2, Nth pode ser derivado como 8, e no caso onde o valor cclm_reduced_sample_num é 3, Nth pode ser derivado como 16.
[0150] Entretanto, no caso onde as informações adicionais que representam Nth são transmitidas em uma unidade de CU, fatia, Gravura ou sequência, o aparelho de codificação pode determinar o valor Nth conforme abaixo e transmitir as informações adicionais que representam Nth que representa o valor Nth.
[0151] - No caso onde as informações adicionais que representam Nth são transmitidas em uma unidade de CU, quando um modo de intrapredição do bloco de croma atual for um modo de CCLM, o aparelho de codificação pode determinar um lado de boa eficiência de codificação entre dois casos a seguir através de RDO e transmitir informações do método determinado ao aparelho de decodificação.
[0152] 1) No caso onde a eficiência de codificação é boa quando um cálculo de parâmetro de CCLM for realizado através do método de seleção de amostra de referência de CCLM existente, cclm_reduced_sample_flag de valor 0 (falso) é transmitido.
[0153] 2) No caso onde a eficiência de codificação é boa quando Nth for definido para 2 e um cálculo de parâmetro de CCLM for realizado através do método de seleção de amostra de referência de CCLM proposto na presente modalidade, cclm_reduced_sample_flag de valor 1 (verdadeiro) é transmitido.
[0154] - Alternativamente, no caso onde as informações adicionais que representam Nth são transmitidas em uma unidade de fatia, Gravura ou sequência, o aparelho de codificação pode adicionar uma sintaxe de alto nível (HLS) conforme representado na Tabela 4, Tabela 5 ou Tabela 6 descritas acima e transmitir as informações adicionais que representam Nth. O aparelho de codificação pode configurar o valor Nth considerando-se um tamanho de imagem de entrada ou de acordo com uma taxa de bits alvo de codificação.
[0155] 1) Por exemplo, no caso onde uma imagem de entrada tem qualidade HD ou superior, o aparelho de codificação pode definir como Nth = 8, e no caso onde uma imagem de entrada tem qualidade HD ou inferior, o aparelho de codificação pode definir como Nth = 4.
[0156] 2) No caso onde a codificação de imagem de alta qualidade é exigida, o aparelho de codificação pode definir como Nth = 8, e no caso onde a codificação de imagem de qualidade normal é exigida, o aparelho de codificação pode definir como Nth = 2.
[0157] Entretanto, conforme representado na Tabela 3 descrita acima, quando o método proposto na presente modalidade for usado, identifica-se que uma quantidade de operação necessária para o cálculo de parâmetro de CCLM não é aumentada mesmo se um tamanho de bloco for aumentado. Como um exemplo, no caso onde um tamanho de bloco de croma atual é 32x32, uma quantidade de operação necessária para o cálculo de parâmetro de CCLM pode ser reduzida como 86% através do método proposto na presente modalidade (por exemplo, define-se: Nth = 4).
[0158] A tabela abaixo pode representar dados de resultados experimentais no caso onde Nth é 2.
Figure img0013
Figure img0014
[0159] Além disso, a tabela abaixo pode representar dados de resultados experimentais no caso onde Nth é 4.
Figure img0015
[0160] Além disso, a tabela abaixo pode representar dados de resultados experimentais no caso onde Nth é 8.
Figure img0016
[0161] Além disso, a tabela abaixo pode representar dados de resultados experimentais no caso onde Nth é 16.
Figure img0017
[0162] As Tabelas 8 a 11 acima podem representar a eficiência de codificação e complexidade operacional no caso onde Nth é 2, 4, 8 e 16, respectivamente.
[0163] Referindo-se às Tabelas 8 a 11 acima, identifica-se que a eficiência de codificação não é significativamente alterada mesmo no caso de reduzir uma quantidade de operação necessária para o cálculo de parâmetro de CCLM. Por exemplo, referindo-se à Tabela 9, no caso onde Nth é definido para 4 (Nth = 4), eficiência de codificação para cada componente é Y 0,04%, Cb 0,12% e Cr 0,07%, que identifica que a eficiência de codificação não é significativamente alterada em comparação ao caso de não definir Nth, e a complexidade de codificação e decodificação é reduzida para 97% e 95%, respectivamente.
[0164] Além disso, referindo-se às Tabelas 10 e 11, no caso de reduzir uma quantidade de operação necessária para o cálculo de parâmetro de CCLM (isto é, Nth = 8 ou 16), identifica-se que a eficiência de codificação se torna melhor, e a complexidade de codificação e decodificação é reduzida.
[0165] O método proposto na presente modalidade pode ser usado para um modo de CCLM que é um modo de intrapredição para um componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial de uma imagem original no aparelho de codificação ou usado para imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0166] As Figuras 8a e 8b são diagramas para descrever um procedimento para realizar uma predição de CCLM para um bloco de croma atual de acordo com uma modalidade.
[0167] Referindo-se à Figura 8a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S800). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 8b.
[0168] A Figura 8b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 8b, o aparelho de codificação/aparelho de decodificação pode definir Nth para o bloco de croma atual (etapa, S805). Nth pode ser um valor predeterminado ou derivado com base nas informações adicionais para Nth. Nth pode ser definido para 2, 4, 8 ou 16.
[0169] A seguir, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S810).
[0170] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode determinar se N, uma largura do bloco atual, é maior que Nth (etapa, S815).
[0171] No caso onde N é maior que Nth, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S820).
[0172] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S825).
[0173] Além disso, no caso onde N não é maior que Nth, o aparelho de codificação/aparelho de decodificação pode selecionar 2N amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S830). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S825).
[0174] Entretanto, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado no tamanho MxN ou tamanho NxM (etapa, S835). No presente documento, M pode representar um valor maior que N (N < M).
[0175] A seguir, o aparelho de codificação/aparelho de decodificação determina se N é maior que Nth (etapa, S840).
[0176] No caso onde N é maior que Nth, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S845).
[0177] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S825).
[0178] Além disso, no caso onde N não é maior que Nth, o aparelho de codificação/aparelho de decodificação pode selecionar 2N amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S850). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S825).
[0179] Referindo-se à Figura 8a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S860). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0180] Entretanto, na presente revelação, em derivar o parâmetro de CCLM, pode-se propor uma modalidade que é diferente da presente modalidade para reduzir a complexidade operacional para derivar o parâmetro de CCLM.
[0181] Como um exemplo, a fim de solucionar o problema de aumento da quantidade de operação do parâmetro de CCLM à medida que o tamanho do bloco de croma aumenta descrita anteriormente, pode-se propor uma modalidade para calcular o parâmetro de CCLM configurando-se um limite superior de seleção de amostra vizinha Nth a um tamanho de bloco do bloco de croma atual adaptativamente e selecionando-se um pixel vizinho do bloco de croma atual com base no Nth configurado. Nth também pode ser representado como um número máximo de amostra vizinha.
[0182] Por exemplo, Nth pode ser configurado para um tamanho de bloco do bloco de croma atual adaptativamente conforme abaixo.
[0183] - No caso onde N <= TH no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, N <= M), é configurado: Nth = 2.
[0184] - No caso onde N > TH no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, N <= M), é configurado: Nth = 4.
[0185] Nesse caso, por exemplo, dependendo de um valor limiar TH, uma amostra de referência usada para calcular o parâmetro de CCLM pode ser selecionada conforme abaixo.
[0186] Por exemplo, no caso onde TH é 4 (TH = 4), e no caso onde N do bloco de croma atual é 2 ou 4, dois pares de amostra para um lado de bloco são usados, e o parâmetro de CCLM pode ser calculado, e no caso onde N é 8, 16 ou 32, quatro pares de amostra para um lado de bloco são usados, e o parâmetro de CCLM pode ser calculado.
[0187] Além disso, por exemplo, no caso onde TH é 8 (TH = 8), dois pares de amostra para um lado de bloco são usados, e o parâmetro de CCLM pode ser calculado, e no caso onde N é 16 ou 32, quatro pares de amostra para um lado de bloco são usados, e o parâmetro de CCLM pode ser calculado.
[0188] Conforme descrito anteriormente, de acordo com a presente modalidade, Nth é configurado para um tamanho de bloco do bloco de croma atual adaptativamente, um número de amostra que é otimizado para um tamanho de bloco pode ser selecionado.
[0189] Por exemplo, uma quantidade de operação para o cálculo de parâmetro de CCLM de acordo com o método de seleção de amostra de referência de CCLM existente e a presente modalidade pode ser representada na tabela a seguir.
Figure img0018
[0190] No presente documento, N pode representar o menor valor de uma largura e uma altura do bloco atual. Referindo-se à Tabela 12 acima, no caso onde o método de seleção de amostra de referência de CCLM proposto na presente modalidade é usado, uma quantidade de operação necessária para o cálculo de parâmetro de CCLM não é aumentada mesmo no caso onde a tamanho de bloco é aumentado.
[0191] Entretanto, o TH pode ser derivado como um valor predeterminado no aparelho de codificação e no aparelho de decodificação sem a necessidade de transmitir informações adicionais que representam o TH. Alternativamente, as informações adicionais que representam o TH podem ser transmitidas em uma unidade de Unidade de Codificação (CU), fatia, Gravura ou sequência, e o TH pode ser derivado com base nas informações adicionais que representam o TH. As informações adicionais que representam o TH podem representar um valor do TH.
[0192] Por exemplo, no caso onde as informações adicionais que representam TH são transmitidas em uma unidade CU, quando um modo de intrapredição de um bloco de croma atual for o modo de CCLM, conforme descrito abaixo, pode-se propor um método para analisar um elemento de sintaxe cclm_reduced_sample_flag e realizar um procedimento de cálculo de parâmetro de CCLM. cclm_reduced_sample_flag pode representar um elemento de sintaxe de indicador de amostra reduzida de CCLM.
[0193] - No caso onde cclm_reduced_sample_flag é 0 (falso), o mesmo é configurado para Nth = 4 para todos os blocos, e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra vizinha da presente modalidade proposta na Figura 8 descrita acima.
[0194] - No caso onde cclm_reduced_sample_flag é 1 (verdadeiro), o mesmo é configurado para TH = 4, e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra vizinha proposto na presente modalidade descrita anteriormente.
[0195] Alternativamente, no caso onde as informações adicionais que representam TH são transmitidas em uma unidade de fatia, Gravura ou sequência, conforme descrito abaixo, o valor de TH pode ser decodificado com base nas informações adicionais transmitidas através de uma sintaxe de alto nível (HLS).
[0196] Por exemplo, as informações adicionais sinalizadas através de um cabeçalho de fatia podem ser representadas conforme a tabela a seguir.
Figure img0019
[0197] cclm_reduced_sample_threshold pode representar um elemento de sintaxe das informações adicionais que representam TH.
[0198] Alternativamente, por exemplo, as informações adicionais sinalizadas através um Conjunto de Parâmetros de Gravura (PPS) podem ser representadas conforme a tabela a seguir.
Figure img0020
[0199] Alternativamente, por exemplo, as informações adicionais sinalizadas através um Conjunto de Parâmetros de Sequência (SPS) podem ser representadas conforme a tabela a seguir. [TABELA 15]
Figure img0021
[0200] Valor de TH, que é derivado com base no valor cclm_reduced_sample_threshold (isto é, um valor derivado decodificando-se cclm_reduced_sample_threshold) transmitido através do cabeçalho de fatia, o PPS ou o SPS, pode ser derivado conforme representado na tabela a seguir.
Figure img0022
[0201] Por exemplo, referindo-se à Tabela 16 acima, o TH pode ser derivado com base em cclm_reduced_sample_threshold. No caso onde o valor cclm_reduced_sample_threshold é 0, o TH pode ser derivado como 4, e no caso onde o valor cclm_reduced_sample_threshold é 1, o TH pode ser derivado como 8.
[0202] Entretanto, no caso onde o TH é derivado como um valor predeterminado no aparelho de codificação e no aparelho de decodificação sem transmitir informações adicionais separadas, o aparelho de codificação pode realizar o cálculo de parâmetro de CCLM para a predição de CCLM conforme a presente modalidade descrita anteriormente com base no valor de TH predeterminado.
[0203] Alternativamente, o aparelho de codificação pode determinar se usa o valor limiar TH e pode transmitir informações que representam se usa o TH e as informações adicionais que representam o valor de TH ao aparelho de decodificação conforme abaixo.
[0204] - No caso onde as informações que representam se usa o TH são transmitidas em uma unidade de CU, quando um modo de intrapredição do bloco de croma atual for o modo de CCLM (isto é, a predição de CCLM for aplicada ao bloco de croma atual), o aparelho de codificação pode determinar um lado de boa eficiência de codificação entre dois casos a seguir através de RDO e transmitir informações do método determinado ao aparelho de decodificação.
[0205] 1) No caso onde a eficiência de codificação é boa quando Nth for definido para 4 para todos os blocos e um cálculo de parâmetro de CCLM for realizado através do método de seleção de amostra de referência da presente modalidade proposta na Figura 8 descrita anteriormente, cclm_reduced_sample_flag de valor 0 (falso) é transmitido.
[0206] 2) No caso onde a eficiência de codificação é boa quando o TH for definido para 4 e um cálculo de parâmetro de CCLM for realizado através do método de seleção de amostra de referência da presente modalidade proposta, cclm_reduced_sample_flag de valor 1 (verdadeiro) é transmitido.
[0207] - Alternativamente, no caso onde as informações que representam se usa o TH são transmitidas em uma unidade de fatia, Gravura ou sequência, o aparelho de codificação pode adicionar uma sintaxe de alto nível (HLS) conforme representado na Tabela 13, Tabela 14 ou Tabela 15 descritas anteriormente e transmitir as informações que representam se usa o TH. O aparelho de codificação pode configurar o uso do TH considerando-se um tamanho de imagem de entrada ou de acordo com uma taxa de bits alvo de codificação.
[0208] 1) Por exemplo, no caso onde uma imagem de entrada tem qualidade HD ou superior, o aparelho de codificação pode definir como TH = 8, e no caso onde uma imagem de entrada tem qualidade HD ou inferior, o aparelho de codificação pode definir como TH = 4.
[0209] 2) No caso onde se exige uma codificação de imagem de alta qualidade, o aparelho de codificação pode definir como TH = 8, e no caso onde se exige uma codificação de imagem de qualidade normal, o aparelho de codificação pode definir como TH = 4.
[0210] O método proposto na presente modalidade pode ser usado para um modo de CCLM que é um modo de intrapredição para um componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial a partir de uma imagem original no aparelho de codificação ou usado para imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0211] As Figuras 9a e 9b são diagramas para descrever um procedimento para realizar predição de CCLM para um bloco de croma atual de acordo com uma modalidade.
[0212] Referindo-se à Figura 9a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S900). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 9b.
[0213] A Figura 9b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 9b, o aparelho de codificação/aparelho de decodificação pode definir TH para o bloco de croma atual (etapa, S905). O TH pode ser um valor predeterminado ou derivado com base nas informações adicionais para TH. O TH pode ser definido para 4 ou 8.
[0214] A seguir, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S910).
[0215] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode determinar se N, uma largura do bloco atual, é maior que TH (etapa, S915).
[0216] No caso onde N é maior que TH, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S920). No presente documento, Nth pode ser 4. Ou seja, no caso onde N é maior que TH, Nth pode ser 4.
[0217] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S925).
[0218] Além disso, no caso onde N não é maior que TH, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S930). Ou seja, no caso onde N não é maior que TH, Nth pode ser 2. A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S925).
[0219] Entretanto, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado no tamanho MxN ou tamanho NxM (etapa, S935). No presente documento, M pode representar um valor maior que N (N < M).
[0220] A seguir, o aparelho de codificação/aparelho de decodificação determina se N é maior que TH (etapa, S940).
[0221] No caso onde N é maior que TH, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S945). No presente documento, Nth pode ser 4. Ou seja, no caso onde N é maior que TH, Nth pode ser 4.
[0222] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S925).
[0223] Além disso, no caso onde N não é maior que TH, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S950). No presente documento, Nth pode ser 2. Ou seja, no caso onde N é maior que TH, Nth pode ser 2. A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S925).
[0224] Referindo-se à Figura 9a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S960). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0225] Entretanto, na presente revelação, em derivar o parâmetro de CCLM, pode-se propor uma modalidade que é diferente da presente modalidade para reduzir a complexidade operacional para derivar o parâmetro de CCLM.
[0226] Particularmente, a fim de solucionar o problema de aumento da quantidade de operação do parâmetro de CCLM à medida que o tamanho do bloco de croma aumenta descrito anteriormente, a presente modalidade propõe um método para configurar um limite superior de seleção de pixel Nth adaptativamente. Além disso, no caso onde N = 2 (aqui, N é um valor menor entre uma largura e uma altura de um bloco de croma), a fim de evitar a operação de pior caso (uma predição de CCLM de caso é realizada para todos os blocos de croma, após todos os blocos de croma em um CTU serem divididos em tamanho 2x2) ocorrido na predição de CCLM para um bloco de croma de tamanho 2x2, a presente modalidade propõe um método para configurar Nth adaptativamente, e através disso, uma quantidade de operação para cálculo de parâmetro de CCLM no pior caso pode ser reduzida em cerca de 40%.
[0227] Por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0228] - Método 1 na presente modalidade (método proposto 1)
[0229] - No caso onde N <= 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 1 (Nth = 1).
[0230] - No caso onde N = 4 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 2 (Nth = 2).
[0231] - No caso onde N > 4 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 4 (Nth = 4).
[0232] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0233] - Método 2 na presente modalidade (método proposto 2)
[0234] - No caso onde N <= 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 1 (Nth = 1).
[0235] - No caso onde N = 4 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 2 (Nth = 2).
[0236] - No caso onde N = 8 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 4 (Nth = 4).
[0237] - No caso onde N > 8 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 8 (Nth = 8).
[0238] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0239] - Método 3 na presente modalidade (método proposto 3)
[0240] - No caso onde N <= 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 1 (Nth = 1).
[0241] - No caso onde N > 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 2 (Nth = 2).
[0242] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0243] - Método 4 na presente modalidade (método proposto 4)
[0244] - No caso onde N <= 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 1 (Nth = 1).
[0245] - No caso onde N > 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 4 (Nth = 4).
[0246] O método 1 ao método 4 descritos anteriormente na presente modalidade podem reduzir uma complexidade do pior caso em cerca de 40%, e visto que Nth pode ser adaptativamente aplicado a cada tamanho do bloco de croma, pode- se minimizar a perda de codificação. Além disso, por exemplo, visto que o método 2 pode aplicar Nth até 8 de modo variável, pode ser apropriado à codificação de imagem de alta qualidade. Visto que o método 3 e o método 4 podem reduzir Nth para 4 ou 2, a complexidade de CCLM pode ser reduzida significativamente, e pode ser apropriado à qualidade de imagem baixa ou qualidade de imagem média.
[0247] Conforme descrito no método 1 ao método 4, de acordo com a presente modalidade, Nth pode ser configurado adaptativamente a um tamanho de bloco, e através disso, um número de amostra de referência para derivar um parâmetro de CCLM otimizado pode ser selecionado.
[0248] O aparelho de codificação/aparelho de decodificação pode definir o limite superior Nth para seleção de amostra vizinha, e, então, calcular um parâmetro de CCLM selecionando-se uma amostra vizinha de bloco de croma conforme descrito anteriormente.
[0249] Uma quantidade de cálculo de parâmetro de CCLM de acordo com um tamanho do bloco de croma no caso ao qual a presente modalidade descrita anteriormente é aplicada pode ser representada conforme a tabela a seguir.
Figure img0023
[0250] Conforme representado na Tabela 17 acima, no caso onde os métodos propostos na presente modalidade são usados, identifica-se que uma quantidade de operação necessária para o cálculo de parâmetro de CCLM não é um aumento mesmo se um tamanho de bloco for aumentado.
[0251] Entretanto, de acordo com a presente modalidade, sem a necessidade transmitir informações adicionais, um valor prometido pode ser usado no aparelho de codificação e no aparelho de decodificação, ou pode ser transmitido se usa o método proposto e informações que representam o valor Nth em uma unidade de CU, fatia, Gravura e sequência.
[0252] Por exemplo, no caso onde informações que representam se usa o método proposto são usadas em uma unidade de CU, quando um modo de intrapredição de um bloco de croma atual for um modo de CCLM (isto é, no caso onde uma predição de CCLM é aplicada ao bloco de croma atual), cclm_reduced_sample_flag pode ser analisado e a presente modalidade descrita anteriormente pode ser realizada conforme abaixo.
[0253] - No caso onde cclm_reduced_sample_flag é 0 (falso), o mesmo é configurado como Nth = 4 para todos os blocos, e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra vizinha da presente modalidade proposta na Figura 8 descrita acima.
[0254] - No caso onde cclm_reduced_sample_flag é 1 (verdadeiro), um cálculo de parâmetro de CCLM é realizado através do método 3 da presente modalidade descrita anteriormente.
[0255] Alternativamente, no caso onde as informações que representam o método aplicado são transmitidas em uma unidade de fatia, Gravura ou sequência, conforme descrito abaixo, o método dentre o método 1 ao método 4 pode ser selecionado com base nas informações transmitidas através de uma sintaxe de alto nível (HLS), e com base no método selecionado, o parâmetro de CCLM pode ser calculado.
[0256] Por exemplo, as informações que representam o método aplicado sinalizado através de um cabeçalho de fatia podem ser representadas conforme a tabela a seguir.
Figure img0024
[0257] cclm_reduced_sample_threshold pode representar um elemento de sintaxe das informações que representam o método aplicado.
[0258] Alternativamente, por exemplo, as informações que representam o método aplicado sinalizado através de um Conjunto de Parâmetros de Gravura (PPS) podem ser representadas conforme a tabela a seguir.
Figure img0025
[0259] Alternativamente, por exemplo, as informações que representam o método aplicado sinalizado através de um Conjunto de Parâmetros de Sequência (SPS) podem ser representadas conforme a tabela a seguir.
Figure img0026
[0260] O método selecionado com base no valor cclm_reduced_sample_threshold (isto é, um valor derivado decodificando-se cclm_reduced_sample_threshold) transmitido através do cabeçalho de fatia, do PPS ou do SPS pode ser derivado conforme representado na tabela a seguir.
Figure img0027
Figure img0028
[0261] Referindo-se à Tabela. 21, no caso onde o valor cclm_reduced_sample_threshold é 0, método 1 pode ser selecionado como o método aplicado ao bloco de croma atual, no caso onde o valor cclm_reduced_sample_threshold é 1, método 2 pode ser selecionado como o método aplicado ao bloco de croma atual, no caso onde o valor cclm_reduced_sample_threshold é 2, método 3 pode ser selecionado como o método aplicado ao bloco de croma atual, e no caso onde o valor cclm_reduced_sample_threshold é 3, método 4 pode ser selecionado como o método aplicado ao bloco de croma atual.
[0262] O método proposto na presente modalidade pode ser suado como um modo de CCLM que é um modo de intrapredição para um componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial de uma imagem original no aparelho de codificação ou usado para derivar uma imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0263] Entretanto, no caso onde as informações que representam um dos métodos são transmitidas em uma unidade de CU, fatia, Gravura e sequência, o aparelho de codificação pode determinar um dentre o método 1 ao método 4 e transmitir as informações ao aparelho de decodificação conforme abaixo.
[0264] - No caso onde as informações que representam se o método da presente modalidade descrita anteriormente é aplicado são transmitidas em uma unidade de CU, quando um modo de intrapredição do bloco de croma atual for um modo de CCLM (isto é, a predição de CCLM é aplicada ao bloco de croma atual), o aparelho de codificação pode determinar um lado de boa eficiência de codificação entre dois casos a seguir através de RDO e transmitir informações do método determinado ao aparelho de decodificação.
[0265] 1) No caso onde a eficiência de codificação é boa quando Nth for definido para 4 para todos os blocos e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra de referência da presente modalidade proposto na Figura 8 descrita acima, cclm_reduced_sample_flag de valor 0 (falso) é transmitido.
[0266] 2) No caso onde a eficiência de codificação é boa quando for configurado que o método 3 é aplicado e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra de referência da presente modalidade proposta, cclm_reduced_sample_flag de valor 1 (verdadeiro) é transmitido.
[0267] - Alternativamente, no caso onde as informações que representam se o método da presente modalidade descrita anteriormente é aplicado são transmitidas em uma unidade de fatia, Gravura ou sequência, o aparelho de codificação pode adicionar uma sintaxe de alto nível (HLS) conforme representado na Tabela 18, Tabela 19 ou Tabela 20 descritas acima e transmitir as informações que representam um método dentre os métodos. O aparelho de codificação pode configurar o método aplicado dentre os métodos considerando-se um tamanho de imagem de entrada ou de acordo com uma taxa de bits alvo de codificação.
[0268] 1) Por exemplo, no caso onde uma imagem de entrada tem qualidade HD ou superior, o aparelho de codificação pode aplicar o método 2 (Nth = 1, 2, 4 ou 8), e no caso onde uma imagem de entrada tem qualidade HD ou inferior, o aparelho de codificação pode aplicar o método 1 (Nth = 1, 2 ou 4).
[0269] 2) No caso onde uma codificação de imagem de alta qualidade for exigida, o aparelho de codificação pode aplicar o método 2 (Nth = 1, 2, 4 ou 8), e no caso onde uma codificação de imagem de qualidade normal for exigida, o aparelho de codificação pode aplicar o método 4 (Nth = 1 ou 4).
[0270] O método proposto na presente modalidade pode ser usado para um modo de CCLM que é um modo de intrapredição para um componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial de uma imagem original no aparelho de codificação ou usado para imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0271] As Figuras 10a e 10b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 1 da presente modalidade descrita anteriormente.
[0272] Referindo-se à Figura 10a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1000). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 10b.
[0273] A Figura 10b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 10b, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S1005).
[0274] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode definir uma largura ou uma altura do bloco atual para N (etapa, S1010) e determinar se N é menor que 2 (N < 2) (etapa, S1015).
[0275] Alternativamente, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado no tamanho MxN ou tamanho NxM (etapa, S1020). O aparelho de codificação/aparelho de decodificação determina se N é menor que 2 (etapa, S1015). No presente documento, M representa um valor maior que N (N < M).
[0276] No caso onde N é menor que 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1025). No presente documento, Nth pode ser 1 (Nth = 1).
[0277] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1030).
[0278] Entretanto, no caso onde N não é menor que 2, o aparelho de codificação/aparelho de decodificação pode determinar se N é 4 ou menos (N <= 4) (etapa, S1035).
[0279] No caso onde N é 4 ou menos, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1040). No presente documento, Nth pode ser 2. A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1030).
[0280] Alternativamente, no caso onde N é maior que 4, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1045). No presente documento, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1030).
[0281] Referindo-se à Figura 10a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S1050). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0282] As Figuras 11a e 11b são diagramas para descrever um procedimento para realizar predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 2 da presente modalidade descrita anteriormente.
[0283] Referindo-se à Figura 11a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1100). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 11b.
[0284] A Figura 11b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 11b, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S1105).
[0285] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode definir uma largura ou uma altura do bloco atual para N (etapa, S1110) e determinar se N é menor que 2 (N < 2) (etapa, S1115).
[0286] Alternativamente, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado no tamanho MxN ou tamanho NxM (etapa, S1120). O aparelho de codificação/aparelho de decodificação determina se N é menor que 2 (etapa, S1115). No presente documento, M representa um valor maior que N (N < M).
[0287] No caso onde N é menor que 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1125). No presente documento, Nth pode ser 1 (Nth = 1).
[0288] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1130).
[0289] Entretanto, no caso onde N não é menor que 2, o aparelho de codificação/aparelho de decodificação pode determinar se N é 4 ou menos (N <= 4) (etapa, S1135).
[0290] No caso onde N é 4 ou menos, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1140). No presente documento, Nth pode ser 2. A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1130).
[0291] Entretanto, no caso onde N é maior que 4, o aparelho de codificação/aparelho de decodificação pode determinar se N é 8 ou menos (N <= 8) (etapa, S1145).
[0292] No caso onde N é 8 ou menos, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1150). No presente documento, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1130).
[0293] Alternativamente, no caso onde N é maior que 8, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1155). No presente documento, Nth pode ser 8 (Nth = 8). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1130).
[0294] Referindo-se à Figura 11a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S1160). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0295] As Figuras 12a e 12b são diagramas para descrever um procedimento para realizar predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 3 da presente modalidade descrita anteriormente.
[0296] Referindo-se à Figura 12a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1200). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 12b.
[0297] A Figura 12b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 12b, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S1205).
[0298] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode definir uma largura ou uma altura do bloco atual para N (etapa, S1210) e determinar se N é menor que 2 (N < 2) (etapa, S1215).
[0299] Alternativamente, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado no tamanho MxN ou tamanho NxM (etapa, S1220). O aparelho de codificação/aparelho de decodificação determina se N é menor que 2 (etapa, S1215). No presente documento, M representa um valor maior que N (N < M).
[0300] No caso onde N é menor que 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1225). No presente documento, Nth pode ser 1 (Nth = 1).
[0301] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1230).
[0302] Entretanto, no caso onde N não é menor que 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1235). No presente documento, Nth pode ser 2. A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1230).
[0303] Referindo-se à Figura 12a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S1240). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0304] As Figuras 13a e 13b são diagramas para descrever um procedimento para realizar predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 4 da presente modalidade descrita anteriormente.
[0305] Referindo-se à Figura 13a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1300). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 13b.
[0306] A Figura 13b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 13b, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S1305).
[0307] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode definir uma largura ou uma altura do bloco atual para N (etapa, S1310) e determinar se N é menor que 2 (N < 2) (etapa, S1315).
[0308] Alternativamente, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado no tamanho MxN ou tamanho NxM (etapa, S1320). O aparelho de codificação/aparelho de decodificação determina se N é menor que 2 (etapa, S1315). No presente documento, M representa um valor maior que N (N < M).
[0309] No caso onde N é menor que 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1325). No presente documento, Nth pode ser 1 (Nth = 1).
[0310] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1330).
[0311] Entretanto, no caso onde N não é menor que 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1335). No presente documento, Nth pode ser 4. A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1330).
[0312] Referindo-se à Figura 13a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S1340). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0313] Entretanto, na presente revelação, em derivar o parâmetro de CCLM, pode-se propor uma modalidade que é diferente da presente modalidade para reduzir a complexidade operacional para derivar o parâmetro de CCLM.
[0314] Particularmente, a fim de solucionar o problema de aumento de quantidade de operação do parâmetro de CCLM à medida que o tamanho do bloco de croma aumenta descrito anteriormente, a presente modalidade propõe um m'todo para configurar um limite superior de seleção de pixel Nth adaptativamente.
[0315] Por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0316] - Método 1 na presente modalidade (método proposto 1)
[0317] - No caso onde a bloco de croma atual é um bloco de croma de tamanho 2x2, Nth pode ser definido para 1 (Nth = 1).
[0318] - No caso onde N = 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N < M), Nth pode ser definido para 2 (Nth = 2).
[0319] - No caso onde N > 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 4 (Nth = 4).
[0320] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0321] - Método 2 na presente modalidade (método proposto 2)
[0322] - No caso onde a bloco de croma atual é um bloco de croma de tamanho 2x2, Nth pode ser definido para 1 (Nth = 1).
[0323] - No caso onde N = 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N < M), Nth pode ser definido para 2 (Nth = 2).
[0324] - No caso onde N = 4 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 2 (Nth = 2).
[0325] - No caso onde N > 4 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 4 (Nth = 4).
[0326] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0327] - Método 3 na presente modalidade (método proposto 3)
[0328] - No caso onde a bloco de croma atual é um bloco de croma de tamanho 2x2, Nth pode ser definido para 1 (Nth = 1).
[0329] - No caso onde N = 2 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N < M), Nth pode ser definido para 2 (Nth = 2).
[0330] - No caso onde N = 4 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 4 (Nth = 4).
[0331] - No caso onde N > 4 no bloco de croma atual de tamanho NxM ou tamanho MxN (aqui, por exemplo, N <= M), Nth pode ser definido para 8 (Nth = 8).
[0332] Método 1 ao método 3 descritos anteriormente na presente modalidade podem reduzir uma complexidade do pior caso no caso onde o bloco de croma atual é 2x2 em cerca de 40%, e visto que Nth pode ser adaptativamente aplicado a cada tamanho do bloco de croma, pode-se minimizar a perda de codificação. Além disso, por exemplo, visto que o método 1 e o método 3 podem aplicar Nth para 4 no caso de N > 2, isso pode ser apropriado para codificação de imagem de alta qualidade. Visto que o método 2 pode reduzir Nth para 2 mesmo no caso de N = 4, a complexidade de CCLM pode ser reduzida significativamente, e pode ser apropriado à qualidade de imagem baixa ou à qualidade de imagem média.
[0333] Conforme descrito no método 1 ao método 3, de acordo com a presente modalidade, Nth pode ser configurado adaptativamente a um tamanho de bloco, e através disso, um número de amostra de referência para derivar um parâmetro de CCLM otimizado pode ser selecionado.
[0334] O aparelho de codificação/aparelho de decodificação pode definir o limite superior Nth para seleção de amostra vizinha, e, então, calcular um parâmetro de CCLM selecionando-se uma amostra vizinha de bloco de croma conforme descrito anteriormente.
[0335] Uma quantidade de cálculo de parâmetro de CCLM de acordo com um tamanho do bloco de croma no caso ao qual a presente modalidade descrita anteriormente é aplicada pode ser representada conforme a tabela a seguir.
Figure img0029
[0336] Conforme representado na Tabela 22 acima, no caso onde os métodos propostos na presente modalidade são usados, identifica-se que uma quantidade de operação necessária para o cálculo de parâmetro de CCLM não é aumentada mesmo se um tamanho de bloco for aumentado.
[0337] Entretanto, de acordo com a presente modalidade, sem a necessidade de transmitir informações adicionais, um valor prometido pode ser usado no aparelho de codificação e no aparelho de decodificação, ou pode ser transmitido se usar o método proposto e informações que representam o valor Nth em uma unidade de CU, fatia, Gravura e sequência.
[0338] Por exemplo, no caso onde informações que representam se usa o método proposto são usadas em uma unidade de CU, quando um modo de intrapredição de um bloco de croma atual for o modo de CCLM (isto é, no caso onde predição de CCLM é aplicada ao bloco de croma atual), cclm_reduced_sample_flag pode ser analisado e a presente modalidade descrita anteriormente pode ser realizada conforme abaixo.
[0339] - No caso onde cclm_reduced_sample_flag é 0 (falso), configura-se Nth = 2 para todos os blocos, e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra vizinha da presente modalidade proposta na Figura 8 descrita acima.
[0340] - No caso onde cclm_reduced_sample_flag é 1 (verdadeiro), um cálculo de parâmetro de CCLM é realizado através do método 1 da presente modalidade descrita anteriormente.
[0341] Alternativamente, no caso onde as informações que representam o método aplicado são transmitidas em uma unidade de fatia, Gravura ou sequência, conforme descrito abaixo, o método dentre o método 1 ao método 3 pode ser selecionado com base nas informações transmitidas através de uma sintaxe de alto nível (HLS), e com base no método selecionado, o parâmetro de CCLM pode ser calculado.
[0342] Por exemplo, as informações que representam o método aplicado sinalizadas através de um cabeçalho de fatia podem ser representadas conforme a tabela a seguir.
Figure img0030
[0343] cclm_reduced_sample_threshold pode representar um elemento de sintaxe das informações que representam o método aplicado.
[0344] Alternativamente, por exemplo, as informações que representam o método aplicado sinalizado através de um Conjunto de Parâmetros de Gravura (PPS) podem ser representadas conforme a tabela a seguir.
Figure img0031
Figure img0032
[0345] Alternativamente, por exemplo, as informações que representam o método aplicado sinalizado através de um Conjunto de Parâmetros de Sequência (SPS) podem ser representadas conforme a tabela a seguir.
Figure img0033
[0346] O método selecionado com base no cclm_reduced_sample_threshold (isto é, um valor derivado decodificando-se cclm_reduced_sample_threshold) transmitido através do cabeçalho de fatia, o PPS ou o SPS podem ser derivados conforme representado na tabela a seguir.
Figure img0034
[0347] Referindo-se à Tabela 26, no caso onde o valor cclm_reduced_sample_threshold é 0, os métodos da presente modalidade descrita anteriormente podem não ser aplicados ao bloco de croma atual, no caso onde o valor cclm_reduced_sample_threshold é 1, o método 1 pode ser selecionado como o método aplicado ao bloco de croma atual, no caso onde o valor cclm_reduced_sample_threshold é 2, o método 2 pode ser selecionado como o método aplicado ao bloco de croma atual, e no caso onde o valor cclm_reduced_sample_threshold é 3, o método 3 pode ser selecionado como o método aplicado ao bloco de croma atual.
[0348] No método proposto na presente modalidade, pode-se usar um modo de CCLM que é um modo de intrapredição para um componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial a partir de uma imagem original no aparelho de codificação ou usado para derivar uma imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0349] Entretanto, no caso onde as informações que representam um dos métodos são transmitidas em uma unidade de CU, fatia, Gravura e sequência, o aparelho de codificação pode determinar um dentre o método 1 ao método 3 e transmitir as informações ao aparelho de decodificação conforme abaixo.
[0350] - No caso onde as informações que representam se o método da presente modalidade descrita anteriormente é aplicado são transmitidas em uma unidade de CU, quando um modo de intrapredição do bloco de croma atual for um modo de CCLM (isto é, a predição de CCLM for aplicada ao bloco de croma atual), o aparelho de codificação pode determinar um lado de boa eficiência de codificação entre os dois casos a seguir através de RDO e transmitir informações do método determinado ao aparelho de decodificação.
[0351] 1) No caso onde a eficiência de codificação é boa quando o Nth for definido para 2 para todos os blocos e um cálculo de parâmetro de CCLM for realizado através do método de seleção de amostra de referência da presente modalidade proposta na Figura 8 descrita anteriormente, cclm_reduced_sample_flag de valor 0 (falso) é transmitido.
[0352] 2) No caso onde a eficiência de codificação é boa quando for configurado que o método 1 é aplicado e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra de referência da presente modalidade proposta, cclm_reduced_sample_flag de valor 1 (verdadeiro) é transmitido.
[0353] - Alternativamente, no caso onde as informações que representam se o método da presente modalidade descrita anteriormente é aplicado são transmitidas em uma unidade de fatia, Gravura ou sequência, o aparelho de codificação pode adicionar uma sintaxe de alto nível (HLS) conforme representado na Tabela 23, Tabela 24 ou Tabela 25 descritas anteriormente e transmitir as informações que representam um método dentre os métodos. O aparelho de codificação pode configurar o método aplicado dentre os métodos considerando-se um tamanho de imagem de entrada ou de acordo com uma taxa de bits alvo de codificação.
[0354] 1) Por exemplo, no caso onde uma imagem de entrada tem qualidade HD ou superior, o aparelho de codificação pode aplicar o método 3 (Nth = 1, 2, 4 ou 8), e no caso onde uma imagem de entrada tem qualidade HD ou inferior, o aparelho de codificação pode aplicar o método 1 (Nth = 1, 2 ou 4).
[0355] 2) No caso onde se exige uma codificação de imagem de alta qualidade, o aparelho de codificação pode aplicar o método 3 (Nth = 1, 2, 4 ou 8), e no caso onde se exige uma codificação de imagem de qualidade normal, o aparelho de codificação pode aplicar o método 2 (Nth = 1, 2, 2 ou 4) ou método 1 (Nth = 1, 2 ou 4).
[0356] O método proposto na presente modalidade pode ser usado para um modo de CCLM que é um modo de intrapredição para um componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial a partir de uma imagem original no aparelho de codificação ou usado para uma imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0357] As Figuras 14a e 14b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 1 da presente modalidade descrita anteriormente.
[0358] Referindo-se à Figura 14a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1400). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 14b.
[0359] A Figura 14b pode ilustrar uma modalidade específica de calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 14b, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S1405).
[0360] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode definir uma largura ou uma altura do bloco atual para N (etapa, S1410) e determinar se um tamanho do bloco de croma atual é 2x2 (etapa, S1415).
[0361] Alternativamente, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado em tamanho MxN ou tamanho NxM (etapa, S1420). O aparelho de codificação/aparelho de decodificação determina se um tamanho do bloco de croma atual é 2x2 (etapa, S1415). No presente documento, M representa um valor maior que N (N < M).
[0362] No caso onde um tamanho do bloco de croma atual é 2x2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1425). No presente documento, Nth pode ser 1 (Nth = 1).
[0363] O aparelho de codificação/aparelho de decodificação pode derivar parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1430).
[0364] Entretanto, no caso onde um tamanho do bloco de croma atual não é 2x2, o aparelho de codificação/aparelho de decodificação determina se N é 2 (N == 2) (etapa, S1435).
[0365] No caso onde N é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1440). No presente documento, Nth pode ser 2 (Nth = 2). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1430).
[0366] Alternativamente, no caso onde N não é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1445). No presente documento, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1430).
[0367] Referindo-se à Figura 14a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S1450). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0368] As Figuras 15a e 15b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 2 da presente modalidade descrita anteriormente.
[0369] Referindo-se à Figura 15a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1500). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 15b.
[0370] A Figura 15b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 15b, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S1505).
[0371] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode definir uma largura ou uma altura do bloco atual para N (etapa, S1510) e determinar se um tamanho do bloco de croma atual é 2x2 (etapa, S1515).
[0372] Alternativamente, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado em tamanho MxN ou tamanho NxM (etapa, S1520). O aparelho de codificação/aparelho de decodificação determina se um tamanho do bloco de croma atual é 2x2 (etapa, S1515). No presente documento, M representa um valor maior que N (N < M).
[0373] No caso onde um tamanho do bloco de croma atual é 2x2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1525). No presente documento, Nth pode ser 1 (Nth = 1).
[0374] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1530).
[0375] Entretanto, no caso onde um tamanho do bloco de croma atual não é 2x2, o aparelho de codificação/aparelho de decodificação determina se N é 2 (N == 2) (etapa, S1535).
[0376] No caso onde N é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1540). No presente documento, Nth pode ser 2 (Nth = 2). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1530).
[0377] Entretanto, no caso onde N não é 2, o aparelho de codificação/aparelho de decodificação pode determinar se N é 4 (N == 4) (etapa, S1545).
[0378] No caso onde N é 4, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1550). No presente documento, Nth pode ser 2 (Nth = 2). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1530).
[0379] Alternativamente, no caso onde N não é 4, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1555). No presente documento, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1530).
[0380] Referindo-se à Figura 15a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S1560). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0381] As Figuras 16a e 16b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 3 da presente modalidade descrita anteriormente.
[0382] Referindo-se à Figura 16a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1600). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 16b.
[0383] A Figura 16b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 16b, o aparelho de codificação/aparelho de decodificação pode determinar se o bloco de croma atual é um bloco de croma quadrado (etapa, S1605).
[0384] No caso onde o bloco de croma atual é um bloco de croma quadrado, o aparelho de codificação/aparelho de decodificação pode definir uma largura ou uma altura do bloco atual para N (etapa, S1610) e determinar se um tamanho do bloco de croma atual é 2x2 (etapa, S1615).
[0385] Alternativamente, no caso onde o bloco de croma atual não é um bloco de croma quadrado, um tamanho do bloco de croma atual pode ser derivado no tamanho MxN ou tamanho NxM (etapa, S1620). O aparelho de codificação/aparelho de decodificação determina se um tamanho do bloco de croma atual é 2x2 (etapa, S1615). No presente documento, M representa um valor maior que N (N < M).
[0386] No caso onde um tamanho do bloco de croma atual é 2x2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1625). No presente documento, Nth pode ser 1 (Nth = 1).
[0387] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1630).
[0388] Entretanto, no caso onde um tamanho do bloco de croma atual não é 2x2, o aparelho de codificação/aparelho de decodificação determina se N é 2 (N == 2) (etapa, S1635).
[0389] No caso onde N é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1640). No presente documento, Nth pode ser 2 (Nth = 2). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1630).
[0390] Entretanto, no caso onde N não é 2, o aparelho de codificação/aparelho de decodificação pode determinar se N é 4 (N == 4) (etapa, S1645).
[0391] No caso onde N é 4, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1650). No presente documento, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1630).
[0392] Alternativamente, no caso onde N não é 4, o aparelho de codificação/aparelho de decodificação pode selecionar 2Nth amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S1655). No presente documento, Nth pode ser 8 (Nth = 8). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S1630).
[0393] Referindo-se à Figura 16a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S1660). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0394] Entretanto, no caso onde uma subamostragem é exigida em derivar uma amostra de referência vizinha para um cálculo de parâmetro de CCLM, a presente revelação propõe uma modalidade de selecionar uma amostra de subamostragem de modo mais eficiente.
[0395] A Figura 17 ilustra um exemplo de selecionar uma amostra de referência vizinha de um bloco de croma.
[0396] Referindo-se a (a) da Figura 17, em um bloco de croma de tamanho 2x2 (N = 2), parâmetros de CCLM α e β para o bloco de croma podem ser calculados com base em 4 amostras de referência vizinhas. As amostras de referência vizinhas podem incluir 4 amostras de referência vizinhas do bloco de luma e 4 amostras de referência vizinhas do bloco de croma. Além disso, conforme as presentes modalidades descritas acima, no caso onde Nth para o bloco de croma de tamanho 2x2 é definido para 1 (Nth = 1), referindo-se a (b) da Figura 17, parâmetros de CCLM α e β para o bloco de croma podem ser calculados com base em 2 amostras de referência vizinhas. No entanto, conforme mostrado na Figura 17, no caso de usar amostras de referência vizinhas que são subamostradas em uma metade, visto que as amostras de referência vizinhas são congestionadas em um lado superior direito do bloco de croma atual, ocorre um problema que a diversidade de amostras de referência vizinhas não é considerada em cálculo de parâmetro de CCLM, que pode ser uma causa da degradação de precisão de CCLM.
[0397] As Figuras 18a a 18c ilustram amostras de referência vizinhas derivadas através da subamostragem existente e amostras de referência vizinhas derivadas através de subamostragem de acordo com a presente modalidade.
[0398] Conforme mostrado nas Figuras 18a e 18b, uma amostra vizinha que esteja afastada de um lado superior esquerdo do bloco de croma atual é preferencialmente selecionada através da subamostragem de acordo com a presente modalidade, valores de amostra mais diversos podem ser selecionados em cálculo de parâmetro de CCLM.
[0399] Além disso, conforme mostrado na Figura 18c, a presente modalidade propõe uma subamostragem que selecione um lado afastado de um lado superior esquerdo preferencialmente mesmo para um bloco de croma não quadrado como tamanho nx2 ou tamanho 2xn. Através disso, valores de amostra mais diversos podem ser selecionados em cálculo de parâmetro de CCLM, e através disso, pode-se aperfeiçoar a precisão de cálculo de parâmetro de CCLM.
[0400] Entretanto, a subamostragem existente pode ser realizada com base na equação a seguir. [Equação 5] ldx_w = ( x * largura ) / subsample_num ldx_h = ( y * altura ) / subsample_num
[0401] No presente documento, Idx_w pode representar uma amostra de referência vizinha (ou posição de amostra de referência vizinha) adjacente a um bloco de croma atual superior que é derivado através de subamostragem, e Idx_h pode representar uma amostra de referência vizinha (ou posição de amostra de referência vizinha) adjacente a um bloco de croma atual esquerdo que é derivado através da subamostragem. Ademais, a largura pode representar uma largura do bloco de croma atual, e a altura pode representar uma altura do bloco de croma atual. Além disso, subsample_num pode representar o número de amostras de referência vizinhas (o número de amostras de referência vizinhas adjacentes a um lado) que é derivado através de subamostragem.
[0402] Por exemplo, a subamostragem realizada com base na Equação 5 acima pode ser realizada conforme abaixo.
[0403] x da Equação 5 acima é uma variável e pode aumentar de 0 para uma amostra de referência número de amostras de referência vizinhas superiores do bloco de croma atual após a subamostragem. Como um exemplo, no caso onde 2 amostras de referência vizinhas superiores são selecionadas no bloco de croma atual cuja largura é 16, a largura da Equação 5 é 16, e x pode variar de 0 a 1. Além disso, visto que Subsample_num é 2, 0 e 8 pode ser selecionados como o valor Idx_w. De modo correspondente, no caso onde componente x e componente y de posição de amostra superior esquerda do bloco de croma atual são 0, a amostra de referência vizinha superior cuja coordenada x é 0 e o a amostra de referência vizinha superior cuja coordenada x é 8 pode ser selecionada dentre as amostras de referência vizinhas superiores através de subamostragem.
[0404] y da Equação 5 acima é uma variável e pode ser aumentada de 0 para uma amostra de referência número de amostras de referência vizinhas esquerdas do bloco de croma atual após a subamostragem. Como um exemplo, no caso onde 4 amostras de referência vizinhas esquerdas são selecionadas no bloco de croma atual cuja altura é 32, a altura da Equação 5 é 32, e y pode variar de 0 a 3. Além disso, visto que Subsample_num é 4, 0, 8, 16 e 24 podem ser selecionados como o valor Idx_h. De modo correspondente, no caso onde componente x e componente y de uma posição de amostra superior esquerda do bloco de croma atual são 0, a amostra de referência vizinha esquerda cuja coordenada y é 0, a amostra de referência vizinha esquerda cuja coordenada y é 8, a amostra de referência vizinha esquerda cuja coordenada y é 16 e a amostra de referência vizinha esquerda cuja coordenada y é 24 pode ser selecionada dentre as amostras de referência vizinhas esquerdas através da subamostragem.
[0405] Referindo-se a Equação 5 acima, apenas uma amostra próxima ao lado superior esquerdo do bloco de croma atual pode ser selecionado através da subamostragem.
[0406] Portanto, de acordo com a presente modalidade, pode-se realizar uma subamostragem com base em uma equação diferente da Equação 5 acima. Por exemplo, a subamostragem propostas na presente modalidade pode ser realizada com base na equação a segui. [Equação 6] ldx_w = largura - 1 - ( x * largura ) / subsample_num_width ldx_h = altura - 1 - ( y * altura ) / subsample_num_height
[0407] No presente documento, subsample_num_width pode representar um número de amostra de referência vizinha superior derivado através de subamostragem e subsample_num_height pode representar um número de amostra de referência vizinha esquerdo derivada através de subamostragem.
[0408] Além disso, x é uma variável e pode ser aumentada é aumento de 0 a uma amostra de referência número de amostras de referência vizinhas superiores do bloco de croma atual após subamostragem. Ademais, y é uma variável pode ser aumentada de 0 a uma amostra de referência número de amostras de referência vizinhas esquerdas do bloco de croma atual após a subamostragem.
[0409] Por exemplo, referindo-se à Equação 6 acima, no caso onde 2 amostras de referência vizinhas superiores são selecionadas no bloco de croma atual cuja largura é 16, a largura da Equação 6 é 16, e x pode variar de 0 a 1. Além disso, visto que subsample_num_width é 2, 15 e 7 podem ser selecionados como valor Idx_w. De modo correspondente, no caso onde componente x e componente y de uma posição de amostra superior esquerda do bloco de croma atual forem 0, a amostra de referência vizinha superior cuja coordenada x é 15 e a amostra de referência vizinha superior cuja coordenada x é 7 podem ser selecionadas dentre as amostras de referência vizinhas superiores através da subamostragem. Ou seja, dentre as amostras de referência vizinhas superiores do bloco de croma atual, a amostra de referência vizinha superior que esteja afastada do lado superior esquerdo do bloco de croma atual pode ser selecionada.
[0410] Além disso, por exemplo, referindo-se à Equação 6 acima, no caso onde 4 amostras de referência vizinhas esquerdas são selecionadas no bloco de croma atual cuja altura é 32, a altura da Equação 6 é 32, e y pode variar de 0 a 3. Além disso, visto que subsample_num_height é 4, 31, 23, 15 e 7 podem ser selecionados como o valor Idx_h. De modo correspondente, no caso onde componente x e componente y de uma posição de amostra superior esquerda do bloco de croma atual são 0, a amostra de referência vizinha esquerda cuja coordenada y é 31, a amostra de referência vizinha esquerda cuja coordenada y é 23, a amostra de referência vizinha esquerda cuja coordenada y é 15 e a amostra de referência vizinha esquerda cuja coordenada y é 7 podem ser selecionadas dentre as amostras de referência vizinhas esquerdas através da subamostragem.
[0411] Entretanto, subsample_num_width e subsample_num_height da Equação 6 acima podem ser derivados com base em um tamanho do bloco de croma atual. Por exemplo, subsample_num_width e subsample_num_height podem ser derivados conforme representado na tabela a seguir.
Figure img0035
[0412] Referindo-se à Tabela 27, a subamostragem pode ser realizada para amostras de referência vizinhas adjacentes a um lado longo de acordo com um lado curto entre a largura e a altura do bloco de croma atual. Ou seja, o número de amostras de referência vizinhas selecionadas dentre as amostras de referência vizinhas adjacentes a um lado longo pode ser derivado como um valor menor entre uma largura e uma altura do bloco de croma atual. Por exemplo, o mesmo pode ser derivado como subsample_num_width = subsample_num_height = min (largura, altura).
[0413] Alternativamente, por exemplo, no caso onde Nth é derivado, subsample_num_width e subsample_num_height podem ser derivados com base em Nth. Por exemplo, subsample_num_width e subsample_num_height podem ser derivados conforme representado na tabela a seguir com base em Nth.
Figure img0036
Figure img0037
[0414] No presente documento, min (A, B) pode representar um valor menor entre A e B.
[0415] Alternativamente, por exemplo, com base em uma tabela de pesquisa predeterminada (LUT), pode-se realizar uma subamostragem para derivar um número de amostras de referência vizinhas ideal de acordo com um formato do bloco de croma atual. Por exemplo, LUT pode ser derivado conforme representado na tabela a seguir.
Figure img0038
[0416] Referindo-se à Tabela 29 acima, o número de amostras de referência vizinhas selecionado pode ser aumentado em comparação com a subamostragem descrita acima, e através disso, um parâmetro de CCLM pode ser calculado em maior precisão. Em subamostragem para derivar 6 amostras de referência vizinhas no exemplo descrito anteriormente, as primeiras 6 posições (idx_w ou idx_h) podem ser selecionadas dentre a subamostragem para derivar 8 amostras de referência vizinhas, e em subamostragem para derivar 12 ou 14 amostras de referência vizinhas, primeiras 12 ou 14 posições podem ser selecionadas dentre uma subamostragem para derivar 16 amostras de referência vizinhas. Além disso, em subamostragem para derivar 24 ou 28 amostras de referência vizinhas, as primeiras 24 ou 28 posições podem ser selecionadas dentre a subamostragem para derivar 32 amostras de referência vizinhas.
[0417] Alternativamente, a fim de evitar o aumento de complexidade de hardware, a subamostragem para derivar um número de amostras de referência vizinhas simplificado pode ser realizada. Por exemplo, LUT pode ser derivado conforme representado na tabela a seguir.
Figure img0039
[0418] Referindo-se à Tabela 30 acima, um valor máximo de somatório de subsample_num_width e subsample_num_height pode ser definido para 8. Através disso, a complexidade de hardware pode ser reduzida, e, simultaneamente, um parâmetro de CCLM pode ser calculado de modo eficiente.
[0419] Em subamostragem para derivar 6 amostras de referência vizinhas no exemplo descrito anteriormente, as primeiras 6 posições (idx_w ou idx_h) podem ser selecionadas dentre subamostragem para derivar 8 amostras de referência vizinhas.
[0420] De acordo com o método proposto, sem a necessidade de transmitir informações adicionais, um valor prometido em um codificador ou um decodificador pode ser usado, ou pode ser transmitido se usa o método proposto ou um valor em uma unidade de CU, fatia, Gravura e sequência.
[0421] No caso onde a subamostragem usando LUT conforme representado na Tabela 29 e Tabela 30 descrito anteriormente é realizada, o aparelho de codificação e o aparelho de decodificação podem usar números subsample_num_width e subsample_num_height determinados na Tabela (isto é, LUT), e no caso onde Nth é usado, subsample_num_width e subsample_num_height podem ser determinados com base no valor Nth. Além disso, em outros casso, o valor derivado como Tabela 28 pode ser usado como um subsample_num_width padrão e um número subsample_num_height.
[0422] Entretanto, no caso onde o método proposto é transmitido em uma unidade de CU, ou seja, as informações que representam se aplica uma subamostragem usando a Equação 6 descrita anteriormente são transmitidas, um método para o aparelho de decodificação realizar uma predição de CCLM analisando- se cclm_subsample_flag conforme abaixo, quando um modo de intrapredição do bloco de croma atual for o modo de CCLM.
[0423] - No caso onde cclm_subsample_flag é 0 (falso), uma seleção de amostra de referência vizinha e um cálculo de parâmetro de CCLM são realizados através do método de subamostragem existente (subamostragem com base na Equação 5 descrita acima).
[0424] - No caso onde cclm_subsample_flag é 1 (verdadeiro), uma seleção de amostra de referência vizinha e um cálculo de parâmetro de CCLM são realizados através do método de subamostragem proposta (subamostragem com base na Equação 6 descrita acima).
[0425] No caso onde as informações que representam se usa o método proposto são transmitidas em uma unidade de fatia, Gravura e sequência, as informações podem ser transmitidas através de sintaxe de alto nível (HLS) conforme abaixo. O aparelho de decodificação pode selecionar um método de subamostragem que seja realizado com base nas informações.
[0426] Por exemplo, as informações que representam se usa o método proposto sinalizado através de um cabeçalho de fatia podem ser representadas como a Tabela a seguir.
Figure img0040
[0427] cclm_reduced_sample_flag pode representar um elemento de sintaxe das informações que representam se usam o método proposto.
[0428] Alternativamente, por exemplo, as informações que representam se usam o método proposto sinalizado através de um Conjunto de Parâmetros de Gravura (PPS) podem ser representadas conforme a tabela a seguir.
Figure img0041
[0429] Alternativamente, por exemplo, as informações que representam se usam o método proposto sinalizado através de um Conjunto de Parâmetros de Sequência (SPS) podem ser representadas conforme a tabela a seguir. [TABELA 33]
Figure img0042
[0430] O método selecionado com base em valor cclm_reduced_sample_flag (isto é, um valor derivado decodificando-se cclm_reduced_sample_flag) transmitido através do cabeçalho de fatia, PPS ou SPS podem ser derivados conforme representado na tabela a seguir.
Figure img0043
[0431] Referindo-se à Tabela 34, no caso onde o valor cclm_reduced_sample_flag é 0, a subamostragem usando Equação 5 pode ser realizada, e no caso onde o valor cclm_reduced_sample_flag é 1, a subamostragem usando Equação 6 pode ser realizada.
[0432] Entretanto, no caso onde um valor predeterminado é usado no aparelho de codificação e no aparelho de decodificação sem transmitir as informações adicionais, o aparelho de codificação pode realizar a modalidade descrita anteriormente da mesma maneira do aparelho de decodificação e realizar um cálculo de parâmetro de CCLM com base nas amostras de referência vizinhas selecionadas.
[0433] Alternativamente, no caso onde as informações que representam se aplica o método de subamostragem proposta são transmitidas em uma unidade de CU, fatia, Gravura e sequência, o aparelho de codificação pode determinar se aplica o método de subamostragem proposta, e, então, transmitir informações do método determinado ao aparelho de decodificação.
[0434] - No caso onde as informações que representam se aplica o método de subamostragem proposto são transmitidas em uma unidade de CU, quando um modo de intrapredição do bloco de croma atual for um modo de CCLM, o aparelho de codificação pode determinar um lado de boa eficiência de codificação entre dois casos a seguir através de RDO e transmitir informações do valor que representa o caso correspondente ao aparelho de decodificação.
[0435] 1) No caso onde a eficiência de codificação é boa quando um cálculo de parâmetro de CCLM for realizado através da subamostragem existente (subamostragem com base na Equação 5 descrita acima), cclm_reduced_sample_flag de valor 0 (falso) é transmitido.
[0436] 2) No caso onde a eficiência de codificação é boa quando um cálculo de parâmetro de CCLM for realizado através da subamostragem proposta (subamostragem com base na Equação 5 descrita acima), cclm_reduced_sample_flag de valor 1 (verdadeiro) é transmitido.
[0437] - No caso onde as informações que representam se aplica a subamostragem proposta método são transmitidas em uma unidade de fatia, Gravura ou sequência, o aparelho de codificação pode adicionar uma sintaxe de alto nível (HLS) conforme representado na Tabela 31, Tabela 32 ou Tabela 33 descritas anteriormente e transmitir as informações.
[0438] A Figura 19 ilustra um exemplo de realizar uma predição de CCLM usando subamostragem usando a Equação 6 descrita acima.
[0439] Referindo-se à Figura 19, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S1900).
[0440] Particularmente, o aparelho de codificação/aparelho de decodificação pode determinar se a subamostragem para amostras vizinhas do bloco de croma atual é exigida (etapa, S1905).
[0441] Por exemplo, a fim de derivar parâmetros de CCLM para o bloco de croma atual, no caso onde amostras vizinhas superiores de um número menor que aquele de uma largura do bloco de croma atual são selecionadas, requer-se realizar a subamostragem para amostras vizinhas superiores do bloco de croma atual. Além disso, por exemplo, a fim de derivar parâmetros de CCLM para o bloco de croma atual, no caso onde amostras vizinhas superiores de um número menor que aquele de uma altura do bloco de croma atual são selecionadas, requer-se realizar a subamostragem para amostras vizinhas do bloco de croma atual esquerdas.
[0442] No caso onde a subamostragem é exigida, o aparelho de codificação/aparelho de decodificação pode selecionar um número específico de amostras vizinhas realizando-se subamostragem usando a Equação 6 para as amostras vizinhas (etapa, S1910). A seguir, o aparelho de codificação/aparelho de decodificação pode calcular parâmetros de CCLM para o bloco de croma atual com base nas amostras vizinhas selecionadas (etapa, S1915).
[0443] No caso onde a subamostragem não é exigida, o aparelho de codificação/aparelho de decodificação pode não realizar a subamostragem, mas selecionar as amostras vizinhas do bloco de croma atual (etapa, S1920). A seguir, o aparelho de codificação/aparelho de decodificação pode calcular os parâmetros de CCLM para o bloco de croma atual com base nas amostras vizinhas selecionadas (etapa, S1915).
[0444] No caso onde os parâmetros de CCLM são derivados, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição do bloco de croma atual realizando-se uma predição de CCLM para o bloco de croma atual com base nos parâmetros de CCLM (etapa, S1925).
[0445] Entretanto, na presente revelação, em derivar o parâmetro de CCLM, pode-se propor uma modalidade que é diferente da presente modalidade de reduzir a complexidade operacional para derivar o parâmetro de CCLM.
[0446] A fim de solucionar o problema de aumento da quantidade de operação de parâmetro de CCLM como o aumento do tamanho do bloco de croma descrito anteriormente, a presente modalidade propõe um método para configurar um limite superior de seleção de pixel Nth adaptativamente. Nth também pode ser referido como um número máximo de amostra vizinha.
[0447] Além disso, no caso onde N = 2 (aqui, N é um valor menor entre uma largura e uma altura de um bloco de croma), a fim de evitar a operação de pior caso (uma predição de CCLM de caso é realizada para todos os blocos de croma, após todos os blocos de croma em uma CTU serem divididos em tamanho 2x2) ocorrida na predição de CCLM para um bloco de croma de tamanho 2x2, a presente modalidade propõe um método para configurar Nth adaptativamente, e através disso, uma quantidade de operação para cálculo de parâmetro de CCLM no pior caso pode ser reduzida em cerca de 50%.
[0448] Por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0449] - Método 1 na presente modalidade (método proposto 1)
[0450] - No caso onde N = 2 no bloco de croma atual de tamanho NxM ou tamanho MxN, Nth pode ser definido para 1 (Nth = 1).
[0451] - No caso onde N = 4 no bloco de croma atual de tamanho NxM ou tamanho MxN, Nth pode ser definido para 2 (Nth = 2).
[0452] - No caso onde N > 4 no bloco de croma atual de tamanho NxM ou tamanho MxN, Nth pode ser definido para 4 (Nth = 4).
[0453] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0454] - Método 2 na presente modalidade (método proposto 2)
[0455] - No caso onde N = 2 no bloco de croma atual de tamanho NxM ou tamanho MxN, Nth pode ser definido para 1 (Nth = 1).
[0456] - No caso onde N = 4 no bloco de croma atual de tamanho NxM ou tamanho MxN, Nth pode ser definido para 2 (Nth = 2).
[0457] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0458] - Método 3 na presente modalidade (método proposto 3)
[0459] - No caso onde N > 4 no bloco de croma atual de tamanho NxM ou tamanho MxN, Nth pode ser definido para 4 (Nth = 4).
[0460] Alternativamente, por exemplo, de acordo com a presente modalidade, Nth pode ser configurado para um tamanho de bloco adaptativamente conforme abaixo.
[0461] - Método 4 na presente modalidade (método proposto 4)
[0462] - No caso onde N > 2 no bloco de croma atual de tamanho NxM ou tamanho MxN, Nth pode ser definido para 2 (Nth = 2).
[0463] Na presente modalidade, o caso que N = 2 pode representar o caso que o número de amostra vizinho para cálculo de parâmetro de CCLM é 4 (isto é, 2N), e o caso que Nth = 1 pode representar o caso que somente 2 (isto é, 2Nth) amostras vizinhas são usadas para cálculo de parâmetro de CCLM. Ademais, o caso que N = 4 pode representar o caso que o número de amostra vizinha para cálculo de parâmetro de CCLM é 8 (isto é, 2N), e o caso que Nth = 2 pode representar o caso que somente 4 (isto é, 2Nth) amostras vizinhas são usadas para cálculo de parâmetro de CCLM.
[0464] Portanto, de acordo com o método 1 acima, no caso onde 4 amostras vizinhas podem ser usadas para predição de CCLM (por exemplo, o caso que o modo de predição de CCLM existente (isto é, modo LM_LA) é aplicado ao bloco de croma de tamanho 2xN ou tamanho Nx2, o caso que o modo LM_A é aplicado ao bloco de croma de tamanho 2xN e o caso que o modo LM_L é aplicado ao bloco de croma de tamanho Nx2), um parâmetro de CCLM é calculado utilizando-se somente metade das amostras vizinhas, e, de modo correspondente, uma quantidade de operação de comparação pode ser reduzida pela metade no pior dos casos. Além disso, mesmo no caso onde 8 amostras vizinhas podem ser usadas para predição de CCLM (por exemplo, o caso que o modo de predição de CCLM existente (isto é, modo LM_LA) é aplicado ao bloco de croma de tamanho 4xN ou tamanho Nx4, o caso que o modo LM_A é aplicado ao bloco de croma de tamanho 4xN e o caso que o modo LM_L é aplicado ao bloco de croma de tamanho Nx4), um parâmetro de CCLM é calculado utilizando-se somente metade das amostras vizinhas, uma quantidade de operação de comparação pode ser reduzida significativamente. Ademais, mesmo para o caso de usar mais amostras vizinhas, somente 8 amostras vizinhas no máximo são usadas, e o cálculo de parâmetro de CCLM pode ser realizado.
[0465] Além disso, de acordo com o método 2 acima, no caso onde 4 amostras vizinhas podem ser usadas para predição de CCLM (por exemplo, o caso que o modo de predição de CCLM existente (isto é, modo LM_LA) é aplicado ao bloco de croma de tamanho 2xN ou tamanho Nx2, o caso que o modo LM_A é aplicado ao bloco de croma de tamanho 2xN e o caso que o modo LM_L é aplicado ao bloco de croma de tamanho Nx2), um parâmetro de CCLM é calculado utilizando-se somente metade das amostras vizinhas, e, de modo correspondente, uma quantidade de operação de comparação pode ser reduzida pela metade no pior dos casos. Ademais, mesmo para o caso de usar mais amostras vizinhas, somente 4 amostras vizinhas no máximo são usadas, e o cálculo de parâmetro de CCLM pode ser realizado.
[0466] Adicionalmente, de acordo com o método 3 acima, somente 8 amostras vizinhas no máximo são usadas, e o cálculo de parâmetro de CCLM pode ser realizado, e de acordo com o método 4 acima, somente 4 amostras vizinhas no máximo são usadas, e o cálculo de parâmetro de CCLM pode ser realizado. Ou seja, de acordo com o método 4, o parâmetro de CCLM pode ser calculado usando 4 blocos vizinhos em todos os blocos de croma.
[0467] Método 1 ao método 4 descritos acima na presente modalidade podem reduzir a operação de comparação do pior dos casos do caso que N = 2 em cerca de 50%, e visto que Nth pode ser adaptativamente aplicado a cada tamanho do bloco de croma, pode-se minimizar uma perda de codificação.
[0468] Conforme descrito no método 1 ao método 4, de acordo com a presente modalidade, Nth pode ser configurado adaptativamente a um tamanho de bloco, e através disso, um número de amostra de referência para derivar um parâmetro de CCLM otimizado pode ser selecionado.
[0469] O aparelho de codificação/aparelho de decodificação pode ajustar o limite superior Nth para seleção de amostra vizinha, e, então, calcular um parâmetro de CCLM selecionando-se uma amostra vizinha de bloco de croma conforme descrito acima.
[0470] Uma quantidade de cálculo de parâmetro de CCLM de acordo com um tamanho do bloco de croma no caso ao qual se aplica a presente modalidade descrita anteriormente pode ser representada conforme a tabela a seguir.
Figure img0044
[0471] Conforme representado na Tabela 35 acima, no caso onde os métodos propostos na presente modalidade são usados, é identificado que uma quantidade de operação necessária para o cálculo de parâmetro de CCLM não é aumentada mesmo se um tamanho de bloco for aumentado.
[0472] Entretanto, de acordo com a presente modalidade, sem a necessidade de transmitir informações adicionais, um valor prometido pode ser usado no aparelho de codificação e no aparelho de decodificação, ou pode ser transmitido se usa o método proposto e informações que representam o valor Nth em uma unidade de CU, fatia, Gravura e sequência.
[0473] Por exemplo, no caso onde informações que representam se usa o método proposto são usadas em uma unidade de CU, quando um modo de intrapredição de um bloco de croma atual for um modo de CCLM (isto é, no caso onde predição de CCLM é aplicado ao bloco de croma atual), cclm_reduced_sample_flag pode ser analisado e a presente modalidade descrita anteriormente pode ser realizada conforme abaixo.
[0474] - No caso onde cclm_reduced_sample_flag é 0 (falso), o mesmo é configurado como Nth = 4 para todos os blocos, e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra vizinha da presente modalidade proposta na Figura 8 descrita acima.
[0475] - No caso onde cclm_reduced_sample_flag é 1 (verdadeiro), um cálculo de parâmetro de CCLM é realizado através do método 2 da presente modalidade descrita anteriormente.
[0476] Alternativamente, no caso onde as informações que representam o método aplicado são transmitidas em uma unidade de fatia, Gravura ou sequência, conforme descrito abaixo, o método dentre o método 1 ao método 4 pode ser selecionado com base nas informações transmitidas através de um sintaxe de alto nível (HLS), e com base no método selecionado, o parâmetro de CCLM pode ser calculado.
[0477] Por exemplo, as informações que representam o método aplicado sinalizado através de um cabeçalho de fatia podem ser representadas conforme a tabela a seguir.
Figure img0045
[0478] cclm_reduced_sample_threshold pode representar um elemento de sintaxe das informações que representam o método aplicado.
[0479] Alternativamente, por exemplo, as informações que representam o método aplicado sinalizado através de um Conjunto de Parâmetros de Gravura (PPS) podem ser representadas conforme a tabela a seguir.
Figure img0046
[0480] Alternativamente, por exemplo, as informações que representam o método aplicado sinalizado através de um Conjunto de Parâmetros de Sequência (SPS) podem ser representadas conforme a tabela a seguir.
Figure img0047
Figure img0048
[0481] O método selecionado com base no valor cclm_reduced_sample_threshold (isto é, um valor derivado decodificando-se cclm_reduced_sample_threshold) transmitido através do cabeçalho de fatia, do PPS ou do SPS pode ser derivado conforme representado na tabela a seguir.
Figure img0049
[0482] Referindo-se à Tabela. 39, no caso onde o valor cclm_reduced_sample_threshold é 0, método 1 pode ser selecionado como o método aplicado ao bloco de croma atual, no caso onde o valor cclm_reduced_sample_threshold é 1, método 2 pode ser selecionado como o método aplicado ao bloco de croma atual, no caso onde o valor cclm_reduced_sample_threshold é 2, método 3 pode ser selecionado como o método aplicado ao bloco de croma atual, e no caso onde o valor cclm_reduced_sample_threshold é 3, método 4 pode ser selecionado como o método aplicado ao bloco de croma atual.
[0483] O método proposto na presente modalidade pode ser usado para o modo de CCLM (modo LM_T, modo LM_T ou modo LM_LT) que é um modo de intrapredição para o componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial a partir de uma imagem original no aparelho de codificação ou usado para uma imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0484] Entretanto, os dados de resultado experimental do método 1 e do método 2 propostos na modalidade descrita anteriormente podem ser conforme abaixo.
[0485] A tabela a seguir pode representar os dados de resultado experimental do método 1.
Figure img0050
[0486] Além disso, a tabela a seguir pode representar os dados de resultado experimental do método 2.
Figure img0051
Figure img0052
[0487] A Tabela 40 e a Tabela 41 podem representar uma eficiência de codificação e complexidade operacional ao qual o método 1 e o método 2 são aplicados. Nesse experimento, uma ancora é VTM3.0rc1, e esse é o resultado experimental All Intra.
[0488] Referindo-se à Tabela 40, quando o método 1 for aplicado, embora uma quantidade de operação de cálculo de parâmetro de CCLM seja reduzida (Nth = 1, 2 e 4), não há perda de codificação, mas, de preferência, um ligeiro ganho de desempenho pode ser obtido (por exemplo, ganho de desempenho de Y 0,02%, Cb 0,12%, Cr 0,17%). Adicionalmente, referindo-se à Tabela 40, identifica-se que as complexidades de codificação e decodificação são diminuídas para 99% e 96%, respectivamente.
[0489] Além disso, referindo-se à Tabela 41, quando o método 2 for aplicado, embora uma quantidade de operação de cálculo de parâmetro de CCLM seja reduzida (Nth = 1 e 2), a eficiência de codificação não é diferente daquela da predição de CCLM existente, e identifica-se que as complexidades de codificação e decodificação são diminuídas para 99% e 96%, respectivamente.
[0490] Entretanto, no caso onde as informações que representam um dos métodos são transmitidas em uma unidade de CU, fatia, Gravura e sequência, o aparelho de codificação pode determinar um dentre o método 1 ao método 4 e transmitir as informações ao aparelho de decodificação conforme abaixo.
[0491] - No caso onde as informações que representam se o método da presente modalidade descrita anteriormente é aplicado são transmitidas em uma unidade de CU, quando um modo de intrapredição do bloco de croma atual for um modo de CCLM (isto é, no caso onde a predição de CCLM (modo LM_T, modo LM_T ou modo LM_LT) for aplicado ao bloco de croma atual), o aparelho de codificação pode determinar um lado de boa eficiência de codificação entre dois casos a seguir através de RDO e transmitir informações do método determinado ao aparelho de decodificação.
[0492] 1) No caso onde a eficiência de codificação é boa quando Nth for definido para 4 para todos os blocos e um cálculo de parâmetro de CCLM for realizado através do método de seleção de amostra de referência da presente modalidade proposta na Figura 8 descrita acima, cclm_reduced_sample_flag de valor 0 (falso) é transmitido.
[0493] 2) No caso onde a eficiência de codificação é boa quando for configurado que o método 2 é aplicado e um cálculo de parâmetro de CCLM é realizado através do método de seleção de amostra de referência da presente modalidade proposta, cclm_reduced_sample_flag de valor 1 (verdadeiro) é transmitido.
[0494] - Alternativamente, no caso onde as informações que representam se o método da presente modalidade descrita anteriormente é aplicado são transmitidas em uma unidade de fatia, Gravura ou sequência, o aparelho de codificação pode adicionar uma sintaxe de alto nível (HLS) conforme representado na Tabela 36, Tabela 37 ou Tabela 38 descritas anteriormente e transmitir as informações que representam um método dentre os métodos. O aparelho de codificação pode configurar o método aplicado dentre os métodos considerando-se um tamanho de imagem de entrada ou de acordo com uma taxa de bits alvo de codificação.
[0495] 1) Por exemplo, no caso onde uma imagem de entrada tem qualidade HD ou superior, o aparelho de codificação pode aplicar o método 1 (Nth = 1, 2 ou 4), e no caso onde uma imagem de entrada tem qualidade HD ou inferior, o aparelho de codificação pode aplicar o método 2 (Nth = 1 ou 2).
[0496] 2) No caso onde uma codificação de imagem de alta qualidade é exigida, o aparelho de codificação pode aplicar o método 3 (Nth = 4), e no caso onde uma codificação de imagem de qualidade normal é exigida, o aparelho de codificação pode aplicar o método 4 (Nth = 2).
[0497] O método proposto na presente modalidade pode ser usado para um modo de CCLM (modo LM_T, modo LM_T ou modo LM_LT) que é um modo de intrapredição para um componente de croma, e o bloco de croma predito através do modo de CCLM pode ser usado para derivar uma imagem residual através de um diferencial de uma imagem original no aparelho de codificação ou usado para uma imagem reconstruída através de uma adição com um sinal residual no aparelho de decodificação.
[0498] As Figuras 20a e 20b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 1 da presente modalidade descrita anteriormente. A predição de CCLM pode representar a predição de CCLM existente, ou seja, a predição de CCLM realizada com base no modo LM_LT ou predição de CCLM realizada com base no modo LM_T.
[0499] Referindo-se à Figura 20a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S2000). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 20b.
[0500] A Figura 20b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 20b, o aparelho de codificação/aparelho de decodificação pode definir N com base em um formato do bloco de croma atual e um modo de predição de CCLM do bloco de croma atual (etapa, S2005). No caso onde o modo LM_LT é aplicado ao bloco de croma atual, um valor menor entre uma largura e uma altura do bloco de croma atual pode ser definido para N. Ademais, por exemplo, no caso onde o bloco de croma atual é um bloco não quadrado cuja largura é maior que uma altura, e o modo LM_T é aplicado ao bloco de croma atual, uma largura do bloco de croma atual pode ser definido para N. Além disso, por exemplo, no caso onde o bloco de croma atual é um bloco não quadrado cuja altura é maior que uma largura, e o modo LM_L é aplicado ao bloco de croma atual, uma altura do bloco de croma atual pode ser definida para N.
[0501] A seguir, o aparelho de codificação/aparelho de decodificação pode determinar se N é 2 (N = 2) (etapa, S2010).
[0502] No caso onde N é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2 (isto é, 2Nth) amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2015). No presente documento, Nth pode ser 1 (Nth = 1).
[0503] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2020).
[0504] Entretanto, no caso onde N não é 2, o aparelho de codificação/aparelho de decodificação pode determinar se N é 4 (N = 4) (etapa, S2025).
[0505] No caso onde N é 4, o aparelho de codificação/aparelho de decodificação pode selecionar 4 (isto é, 2Nth) amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2030). No presente documento, Nth pode ser 2 (Nth = 2). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2020).
[0506] Alternativamente, no caso onde N não é 4, o aparelho de codificação/aparelho de decodificação pode selecionar 8 (isto é, 2Nth) amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2035). No presente documento, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2020).
[0507] Referindo-se à Figura 20a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S2040). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0508] As Figuras 21a e 21b são diagramas para descrever um procedimento para realizar predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 2 da presente modalidade descrita anteriormente. A predição de CCLM pode representar a predição de CCLM existente, ou seja, a predição de CCLM realizada com base no modo LM_LT ou predição de CCLM realizada com base no modo LM_T.
[0509] Referindo-se à Figura 21a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S2100). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 21b.
[0510] A Figura 21b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 21b, o aparelho de codificação/aparelho de decodificação pode definir N com base em um formato do bloco de croma atual e um modo de predição de CCLM do bloco de croma atual (etapa, S2105). No caso onde o modo LM_LT é aplicado ao bloco de croma atual, um valor menor entre uma largura e uma altura do bloco de croma atual pode ser definido para N. Ademais, por exemplo, no caso onde o bloco de croma atual é um bloco não quadrado cuja largura é maior que uma altura, e o modo LM_T é aplicado ao bloco de croma atual, uma largura do bloco de croma atual pode ser definida para N. Além disso, por exemplo, no caso onde o bloco de croma atual é um bloco não quadrado cuja altura é maior que uma largura, e o modo LM_L é aplicado ao bloco de croma atual, uma altura do bloco de croma atual pode ser definida para N.
[0511] A seguir, o aparelho de codificação/aparelho de decodificação pode determinar se N é 2 (N = 2) (etapa, S2110).
[0512] No caso onde N é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 2 (isto é, 2Nth) amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2115). No presente documento, Nth pode ser 1 (Nth = 1).
[0513] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2120).
[0514] Entretanto, no caso onde N não é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 4 (isto é, 2Nth) amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2125). No presente documento, Nth pode ser 2 (Nth = 2). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2120).
[0515] Referindo-se à Figura 21a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S2130). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0516] As Figuras 22a e 22b são diagramas para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivados de acordo com o método 3 da presente modalidade descrita anteriormente. A predição de CCLM pode representar a predição de CCLM existente, ou seja, a predição de CCLM realizada com base no modo LM_LT ou predição de CCLM realizada com base no modo LM_T.
[0517] Referindo-se à Figura 22a, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S2200). Por exemplo, o parâmetro de CCLM pode ser calculado conforme a presente modalidade mostrada na Figura 22b.
[0518] A Figura 22b pode ilustrar uma modalidade específica para calcular o parâmetro de CCLM. Por exemplo, referindo-se à Figura 22b, o aparelho de codificação/aparelho de decodificação pode ser definido como N com base em um formato do bloco de croma atual e um modo de predição de CCLM do bloco de croma atual (etapa, S2205). No caso onde o modo LM_LT é aplicado ao bloco de croma atual, um valor menor entre uma largura e uma altura do bloco de croma atual pode ser definido para N. Ademais, por exemplo, no caso onde o bloco de croma atual é um bloco não quadrado cuja largura é maior que uma altura, e o modo LM_T é aplicado ao bloco de croma atual, uma largura do bloco de croma atual pode ser definida para N. Além disso, por exemplo, no caso onde o bloco de croma atual é um bloco não quadrado cuja altura é maior que uma largura, e o modo LM_L é aplicado ao bloco de croma atual, uma altura do bloco de croma atual pode ser definido para N.
[0519] A seguir, o aparelho de codificação/aparelho de decodificação pode determinar se N é 2 (N = 2) (etapa, S2210).
[0520] No caso onde N é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 4 amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2215). Ou seja, o parâmetro de CCLM pode ser calculado usando amostras de referência na linha de referência.
[0521] O aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2220).
[0522] Entretanto, no caso onde N não é 2, o aparelho de codificação/aparelho de decodificação pode selecionar 8 (isto é, 2Nth) amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2225). No presente documento, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2220).
[0523] Referindo-se à Figura 22a novamente, no caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S2230). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0524] A Figura 23 é um diagrama para descrever um procedimento para realizar uma predição de CCLM com base nos parâmetros de CCLM do bloco de croma atual derivado de acordo com o método 4 da presente modalidade descrita anteriormente. A predição de CCLM pode representar uma predição de CCLM existente, ou seja, a predição de CCLM realizada com base no modo LM_LT ou predição de CCLM realizada com base no modo LM_T.
[0525] Referindo-se à Figura 23, o aparelho de codificação/aparelho de decodificação pode calcular um parâmetro de CCLM para o bloco atual (etapa, S2300).
[0526] Por exemplo, o aparelho de codificação/aparelho de decodificação pode selecionar 4 (isto é, 2Nth) amostras vizinhas em uma linha de referência adjacente ao bloco atual como uma amostra de referência para o cálculo de parâmetro de CCLM (etapa, S2305). No presente documento, Nth pode ser 2 (Nth = 2). Ou, Nth pode ser 4 (Nth = 4). A seguir, o aparelho de codificação/aparelho de decodificação pode derivar os parâmetros α e β para a predição de CCLM com base nas amostras de referência selecionadas (etapa, S2310).
[0527] No caso onde os parâmetros para predição de CCLM para o bloco de croma atual são calculados, o aparelho de codificação/aparelho de decodificação pode realizar a predição de CCLM com base nos parâmetros e gerar uma amostra de predição para o bloco de croma atual (etapa, S2320). Por exemplo, o aparelho de codificação/aparelho de decodificação pode gerar uma amostra de predição para o bloco de croma atual com base nos parâmetros calculados e na Equação 1 descrita anteriormente em que as amostras reconstruídas do bloco de luma atual para o bloco de croma atual.
[0528] A Figura 24 ilustra esquematicamente um método de codificação de vídeo pelo aparelho de codificação de acordo com a presente revelação. O método mostrado na Figura 24 pode ser realizado pelo aparelho de codificação mostrado na Figura 2. Em um exemplo específico, as etapas S2400 a S2460 da Figura 24 podem ser realizadas pelo preditor do aparelho de codificação, e a etapa S2470 pode ser realizada pelo codificador de entropia do aparelho de codificação. Além disso, embora não seja mostrado nos desenhos, o processo de derivar a amostra residual para o bloco de croma atual com base na amostra original e na amostra de predição para o bloco de croma atual pode ser realizado pelo subtrator do aparelho de codificação, o processo de derivar amostras reconstruídas para o bloco de croma atual com base nas amostras residuais e nas amostras de predição para o bloco de croma atual pode ser realizado pelo adicionador do aparelho de codificação, o processo de gerar informações para o residual para o bloco de croma atual com base na amostra residual pode ser realizado pelo transformador do aparelho de codificação, e o processo de codificar informações para o residual pode ser realizado pelo codificador de entropia do aparelho de codificação.
[0529] O aparelho de codificação determina um modo de predição de CCLM do bloco de croma atual dentre uma pluralidade de modos de predição de modelo linear de componente cruzado (CCLM) (etapa, S2400). Por exemplo, o aparelho de codificação pode determinar um modo de intrapredição do bloco de croma atual com base no custo de distorção de taxa (custo de RD; ou RDO). No presente documento, o custo de RD pode ser derivado com base na Diferença de Soma Absoluta (SAD). O aparelho de codificação pode determinar um dos modos de predição de CCLM como o modo de intrapredição do bloco de croma atual com base no custo de RD. Ou seja, o aparelho de codificação pode determinar o modo de predição de CCLM do bloco de croma atual dentre os modos de predição de CCLM com base no custo de RD.
[0530] Além disso, o aparelho de codificação pode codificar as informações de modo de predição que representam o modo de intrapredição do bloco de croma atual, e as informações de modo de predição podem ser sinalizadas através de um fluxo de bits. O elemento de sintaxe que representa as informações de modo de predição para o bloco de croma atual pode ser intra_chroma_pred_mode. As informações de vídeo podem incluir as informações de modo de predição.
[0531] Ademais, o aparelho de codificação pode codificador as informações de índice que indicam o modo de predição de CCLM do bloco de croma atual e sinalizar as informações de índice através de um fluxo de bits. As informações de modo de predição podem incluir as informações de índice que indicam o modo de predição de CCLM do bloco de croma atual dentre os modos de predição de modelo linear de componente cruzado (CCLM)s. No presente documento, os modos de predição de CCLM podem incluir um modo LM superior esquerdo, um modo LM superior e um modo LM esquerdo. O modo LM superior esquerdo pode representar o modo LM_LT descrito acima, o modo LM esquerdo pode representar o modo LM_L descrito acima, e o modo LM superior pode representar o modo LM_T descrito acima. Além disso, o aparelho de codificação pode codificar o indicador que representa se a predição de CCLM é aplicada ao bloco de croma atual e sinalizar o indicador através de um fluxo de bits. As informações de modo de predição podem incluir o indicador que representa se a predição de CCLM é aplicada ao bloco de croma atual. Por exemplo, no caso onde a predição de CCLM é aplicada ao bloco de croma atual, o modo de predição de CCLM indicado pelas informações de índice pode ser derivado como o modo de predição de CCLM para o bloco de croma atual.
[0532] O aparelho de codificação deriva um número de amostra de amostras de croma vizinhas do bloco de croma atual com base no modo de predição de CCLM do bloco de croma atual, um tamanho do bloco de croma atual e um valor específico (etapa, S2410).
[0533] No presente documento, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, as amostras de croma vizinhas podem incluir apenas as amostras de croma vizinhas esquerdas do bloco de croma atual. Além disso, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior, as amostras de croma vizinhas podem incluir apenas as amostras de croma vizinhas superiores do bloco de croma atual. Adicionalmente, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior esquerdo, as amostras de croma vizinhas podem incluir as amostras de croma vizinhas esquerdas e as amostras de croma vizinhas superiores do bloco de croma atual.
[0534] Por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, o aparelho de codificação pode derivar o número de amostra com base em uma altura do bloco de croma atual e no valor específico.
[0535] Como um exemplo, o aparelho de codificação pode derivar o número de amostra das amostras de croma vizinhas comparando-se o dobro da altura e o dobro do valor específico. Por exemplo, no caso onde o dobro da altura do bloco de croma atual é maior que o dobro do valor específico, o número de amostra pode ser derivado como o dobro do valor específico. Ademais, por exemplo, no caso onde o dobro da altura do bloco de croma atual é o dobro do valor específico ou menos, o número de amostra pode ser derivado como o dobro da altura.
[0536] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior, o aparelho de codificação pode derivar o número de amostra com base na largura do bloco de croma atual e no valor específico.
[0537] Como um exemplo, o aparelho de codificação pode derivar o número de amostra das amostras de croma vizinhas comparando-se o dobro da largura e o dobro do valor específico. Por exemplo, no caso onde dobro da largura do bloco de croma atual é maior que dobro do valor específico, o número de amostra pode ser derivado como o dobro do valor específico. Ademais, por exemplo, no caso onde o dobro da largura do bloco de croma atual é o dobro do valor específico ou menos, o número de amostra pode ser derivado como o dobro da largura.
[0538] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, o aparelho de codificação pode derivar o número de amostra das amostras de croma vizinhas superiores e as amostras de croma vizinhas esquerdas comparando-se a largura e a altura com o valor específico.
[0539] Por exemplo, no caso onde a largura e a altura do bloco de croma atual são maiores que o valor específico, o número de amostra pode ser derivado como o valor específico.
[0540] Ademais, por exemplo, no caso onde a largura e a altura do bloco de croma atual são o valor específico ou menos, o número de amostra pode ser derivado como um valor da largura e da altura. Como um exemplo, o número de amostra pode ser derivado como o menor valor da largura e da altura.
[0541] Entretanto, o valor específico pode ser derivado para derivar os parâmetros de CCLM do bloco de croma atual. No presente documento, o valor específico pode ser referido como um limite superior do número de amostra vizinha ou um número máximo de amostra vizinha. Como um exemplo, o valor específico pode ser derivado como 2. Ou, o valor específico pode ser derivado como 4, 8 ou 16.
[0542] Além disso, por exemplo, o valor específico pode ser derivado como um valor predeterminado. Ou seja, o valor específico pode ser derivado como um valor que é esperado entre o aparelho de codificação e o aparelho de decodificação. Em outras palavras, o valor específico pode ser derivado como um valor predeterminado para o bloco de croma atual ao qual o modo de CCLM é aplicado.
[0543] Alternativamente, por exemplo, o aparelho de codificação pode codificar informações que representam o valor específico e sinalizar as informações que representam o valor específico através de um mapa de bits. As informações de vídeo podem incluir as informações que representam o valor específico. As informações que representam o valor específico podem ser sinalizadas em uma unidade de codificação (CU). Ou, as informações que representam o valor específico podem ser sinalizadas em uma unidade de cabeçalho de fatia, Conjunto de Parâmetros de Gravura (PPS) ou Conjunto de Parâmetros de Sequência (SPS). Ou seja, as informações que representam o valor específico podem ser sinalizadas com um cabeçalho de fatia, um Conjunto de Parâmetros de Gravura (PPS) ou um Conjunto de Parâmetros de Sequência (SPS).
[0544] Alternativamente, por exemplo, o aparelho de codificação pode codificar informações de indicador que representam se o número de amostras de referência vizinhas é derivado com base no valor específico e sinalizar as informações de indicador através de um mapa de bits. As informações de vídeo podem incluir as informações de indicador que representam se o número de amostras de referência vizinhas é derivado com base no valor específico. No caso onde o valor de informações de indicador é 1, as informações de indicador podem representar que o número de amostras de referência vizinhas é derivado com base no valor específico, e no caso onde o valor de informações de indicador é 0, as informações de indicador podem representar que o número de amostras de referência vizinhas não é derivado com base no valor específico. No caso onde o valor de informações de indicador é 1, as informações relacionadas às predição podem incluir informações que representam o valor específico, e o valor específico pode ser derivado com base nas informações que representam o valor específico. As informações de indicador e/ou as informações que representam o valor específico podem ser sinalizadas em uma unidade de codificação (CU). Ou, as informações de indicador e/ou as informações que representam o valor específico podem ser sinalizadas em uma unidade de cabeçalho de fatia, Conjunto de Parâmetros de Gravura (PPS) ou Conjunto de Parâmetros de Sequência (SPS). Ou seja, as informações de indicador e/ou as informações que representam o valor específico podem ser sinalizadas com um cabeçalho de fatia, um PPS ou um SPS.
[0545] Alternativamente, por exemplo, o valor específico pode ser derivado com base em um tamanho do bloco de croma atual.
[0546] Como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0547] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 8, o valor específico pode ser derivado como 4, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 8, o valor específico pode ser derivado como 8.
[0548] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 2.
[0549] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 4.
[0550] Além disso, como um exemplo, no caso onde um tamanho do bloco de croma atual é 2x2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 4.
[0551] Além disso, como um exemplo, no caso onde um tamanho do bloco de croma atual é 2x2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 2, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0552] Além disso, como um exemplo, no caso onde um tamanho do bloco de croma atual é 2x2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 2, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 4, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0553] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0554] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 1, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2.
[0555] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0556] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 2.
[0557] Além disso, como um exemplo, o valor específico pode ser derivado com base em se um valor menor entre a largura e a altura do bloco atual é maior que um valor limiar específico. Por exemplo, no caso onde um valor menor entre a largura e a altura do bloco atual é maior que a valor limiar específico, o valor limiar específico pode ser derivado como 4, no caso onde um valor menor entre a largura e a altura do bloco atual é um valor limiar específico ou menos, o valor limiar específico pode ser derivado como 2. O valor limiar específico pode ser derivado como um valor predeterminado. Ou seja, o valor limiar específico pode ser derivado como um valor que é esperado entre o aparelho de codificação e o aparelho de decodificação. Alternativamente, por exemplo, o aparelho de codificação pode codificar as informações de vídeo incluindo as informações relacionadas às predição, e as informações relacionadas às predição podem incluir as informações que representam o valor limiar específico. Nesse caso, o valor limiar específico pode ser derivado com base nas informações que representam o valor limiar específico. Por exemplo, o valor limiar específico derivado pode ser 4 ou 8.
[0558] O aparelho de codificação pode derivar as amostras de croma vizinhas do número de amostra (etapa, S2420). O aparelho de codificação pode derivar as amostras de croma vizinhas do número de amostra.
[0559] Por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior esquerdo, o aparelho de codificação pode derivar amostras de croma vizinhas esquerdas do número de amostra e as amostras de croma vizinhas superiores do número de amostra. Particularmente, no caso onde um tamanho do bloco de croma atual é NxM, o aparelho de codificação pode derivar as amostras de croma vizinhas superiores do número de amostra dentre N amostras de croma vizinhas superiores e derivar as amostras de croma vizinhas esquerdas do número de amostra dentre N amostras de croma vizinhas esquerdas. No presente documento, N pode ser igual ou menor que M.
[0560] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior, o aparelho de codificação pode derivar as amostras de croma vizinhas superiores do número de amostra. Particularmente, no caso onde um tamanho do bloco de croma atual é NxM, o aparelho de codificação pode derivar as amostras de croma vizinhas superiores do número de amostra dentre 2N amostras de croma vizinhas superiores. No presente documento, N pode ser igual ou menor que M.
[0561] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, o aparelho de codificação pode derivar as amostras de croma vizinhas esquerdas do número de amostra. Particularmente, no caso onde um tamanho do bloco de croma atual é MxN, o aparelho de codificação pode derivar as amostras de croma vizinhas esquerdas do número de amostra dentre 2N amostras de croma vizinhas esquerdas. No presente documento, N pode ser igual ou menor que M.
[0562] O aparelho de codificação pode derivar as amostras de luma vizinhas amostradas descendentemente e as amostras de luma amostradas descendentemente do bloco de luma atual (etapa, S2430). No presente documento, as amostras de luma vizinhas podem corresponder a amostras de croma vizinhas. Por exemplo, as amostras de luma vizinhas amostradas descendentemente podem incluir amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas superiores e as amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas esquerdas.
[0563] Ou seja, por exemplo, as amostras de luma vizinhas podem incluir amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas superiores e as amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas esquerdas.
[0564] Alternativamente, por exemplo, as amostras de luma vizinhas amostradas descendentemente podem incluir amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas superiores. Ou seja, por exemplo, as amostras de luma vizinhas podem incluir amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas superiores.
[0565] Alternativamente, por exemplo, as amostras de luma vizinhas amostradas descendentemente podem incluir amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas esquerdas. Ou seja, por exemplo, as amostras de luma vizinhas podem incluir amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas esquerdas.
[0566] O aparelho de codificação deriva os parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente (etapa, S2440). O aparelho de codificação pode derivar os parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente. Por exemplo, o parâmetros de CCLM pode ser derivado com base na Equação 3 descrita acima. Alternativamente, por exemplo, os parâmetros de CCLM podem ser derivados com base na Equação 4 descrita acima.
[0567] O aparelho de codificação deriva as amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e nas amostras de luma amostradas descendentemente (etapa, S2450). O aparelho de codificação pode derivar as amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e nas amostras de luma amostradas descendentemente. O aparelho de codificação pode aplicar o CCLM derivado pelos parâmetros de CCLM às amostras de luma auto-amostradas e gerar amostras de predição para o bloco de croma atual. Ou seja, o aparelho de codificação pode realizar uma predição de CCLM com base nos parâmetros de CCLM e gerar amostras de predição para o bloco de croma atual. Por exemplo, as amostras de predição podem ser derivadas com base na Equação 1 descrita acima.
[0568] O aparelho de codificação codifica informações de vídeo incluindo informações de modo de predição para o bloco de croma atual (etapa, S2460). O aparelho de codificação pode codificar as informações de vídeo incluindo informações de modo de predição para o bloco de croma atual e sinalizar através um fluxo de bits. As informações de modo de predição podem incluir um indicador que representa se a predição de CCLM é aplicada ao bloco de croma atual. Ademais, as informações de modo de predição podem incluir informações de índice que representam um modo de predição de CCLM do bloco de croma atual.
[0569] Além disso, por exemplo, as informações de vídeo podem incluir informações que representam o valor específico. Além disso, por exemplo, as informações de vídeo podem incluir as informações que representam o valor específico. Além disso, por exemplo, as informações de vídeo podem incluir informações de indicador que representam se o número de amostras de referência vizinhas é derivado com base no valor específico.
[0570] Entretanto, embora não seja mostrado nos desenhos, o aparelho de codificação pode derivar amostras residuais para o bloco de croma atual com base nas amostras originais e nas amostras de predição para o bloco de croma atual, gerar informações para residual para o bloco de croma atual com base nas amostras residuais, e codificar as informações para o residual. As informações de vídeo podem incluir as informações para o residual. Além disso, o aparelho de codificação pode gerar amostras reconstruídas para o bloco de croma atual com base nas amostras de predição e nas amostras residuais para o bloco de croma atual.
[0571] Entretanto, o fluxo de bits pode ser transferido ao aparelho de decodificação através de uma rede ou mídia de armazenamento (digital). No presente documento, a rede pode incluir uma rede de radiodifusão e/ou uma rede de comunicação, e a mídia de armazenamento digital pode incluir várias mídias de armazenamento como USB, SD, CD, DVD, Blu-ray, HDD, SSD, e similares.
[0572] A Figura 25 ilustra esquematicamente o aparelho de codificação que realiza o método de codificação de imagem de acordo com a presente revelação. O método mostrado na Figura 24 pode ser realizado pelo aparelho de codificação mostrado na Figura 25. Em um exemplo específico, o preditor do aparelho de codificação pode realizar as etapas S2400 a S2450 da Figura 24, e o codificador de entropia do aparelho de codificação pode realizar a etapa S2460 da Figura 24. Além disso, embora não seja mostrado nos desenhos, o processo de derivar a amostra residual para o bloco de croma atual com base na amostra original e na amostra de predição para o bloco de croma atual pode ser realizado pelo subtrator do aparelho de codificação mostrado na Figura 25, o processo de derivar amostras reconstruídas para o bloco de croma atual com base nas amostras residuais e nas amostras de predição para o bloco de croma atual pode ser realizado pelo adicionador do aparelho de codificação mostrado na Figura 25, o processo de gerar informações para o residual para o bloco de croma atual com base na amostra residual pode ser realizado pelo transformador do aparelho de codificação mostrado na Figura 25, e o processo de codificar informações para o residual pode ser realizado pelo codificador de entropia do aparelho de codificação mostrado na Figura 17.
[0573] A Figura 26 ilustra esquematicamente um método de decodificação de vídeo pelo aparelho de decodificação de acordo com a presente revelação. O método mostrado na Figura 26 pode ser realizado pelo aparelho de decodificação mostrado na Figura 3. Em um exemplo específico, a etapa S2600 da Figura 26 pode ser realizada pelo decodificador de entropia do aparelho de decodificação, e as etapas S2610 a S2650 podem ser realizadas pelo preditor do aparelho de decodificação, e a etapa S1860 pode ser realizada pelo adicionador do aparelho de decodificação. Além disso, embora não seja mostrado nos desenhos, o processo de adquirir informações para o residual do bloco atual através de um fluxo de bits pode ser realizado pelo decodificador de entropia do aparelho de decodificação, e o processo de derivar a amostra residual para o bloco atual com base nas informações residuais pode ser realizado pelo transformador inverso do aparelho de decodificação.
[0574] O aparelho de decodificação obtém informações incluindo as informações de modo de predição para o bloco de croma atual (etapa, S2600). O aparelho de decodificação pode receber informações de vídeo incluindo as informações de modo de predição para o bloco de croma atual. As informações de modo de predição podem representar o modo de intrapredição do bloco de croma atual. Além disso, o elemento de sintaxe que representa as informações de modo de predição para o bloco de croma atual pode ser intra_chroma_pred_mode. As informações de vídeo podem incluir as informações de modo de predição.
[0575] Ademais, as informações de modo de predição podem incluir as informações de índice que indicam o modo de predição de CCLM do bloco de croma atual dentre os modos de predição de modelo linear de componente cruzado (CCLM). Os modos de predição de CCLM podem incluir um modo LM superior esquerdo, um modo LM superior e um modo LM esquerdo. O modo LM superior esquerdo pode representar o modo LM_LT descrito acima, o modo LM esquerdo pode representar o modo LM_L descrito acima, e o modo LM superior pode representar o modo LM_T descrito acima. Além disso, as informações de modo de predição podem incluir o indicador que representa se a predição de CCLM é aplicada ao bloco de croma atual. Por exemplo, no caso onde a predição de CCLM é aplicada ao bloco de croma atual, o modo de predição de CCLM indicado pelas informações de índice pode ser derivado como o modo de predição de CCLM para o bloco de croma atual.
[0576] O aparelho de decodificação pode derivar um dentre uma pluralidade de modos de predição de CCLM como o modo de predição de CCLM para o bloco de croma atual com base nas informações de modo de predição (etapa, S2610). O aparelho de decodificação tem um modo de intrapredição do modo de intrapredição de croma atual com base nas informações de modo de predição. Por exemplo, as informações de modo de predição podem representar o modo de predição de CCLM para o bloco de croma atual. Por exemplo, o modo de predição de CCLM para o bloco de croma atual pode ser derivado com base nas informações de índice. Dentre a pluralidade de modos de predição de CCLM, o modo de predição de CCLM indicado pelas informações de índice pode ser derivado como o modo de predição de CCLM para o bloco de croma atual.
[0577] O aparelho de decodificação deriva um número de amostra de amostras de croma vizinhas do bloco de croma atual com base no modo de predição de CCLM do bloco de croma atual, um tamanho do bloco de croma atual e um valor específico (etapa, S2620).
[0578] No presente documento, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, as amostras de croma vizinhas podem incluir apenas as amostras de croma vizinhas esquerdas do bloco de croma atual. Além disso, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior, as amostras de croma vizinhas podem incluir apenas as amostras de croma vizinhas superiores do bloco de croma atual. Adicionalmente, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior esquerdo, as amostras de croma vizinhas podem incluir as amostras de croma vizinhas esquerdas e as amostras de croma vizinhas superiores do bloco de croma atual.
[0579] Por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, o aparelho de decodificação pode derivar o número de amostra com base na altura do bloco de croma atual e no valor específico.
[0580] Como um exemplo, o aparelho de decodificação pode derivar o número de amostra das amostras de croma vizinhas comparando-se o dobro da altura e o dobro do valor específico. Por exemplo, no caso onde o dobro da altura do bloco de croma atual é maior que dobro do valor específico, o número de amostra pode ser derivado como o dobro do valor específico. Ademais, por exemplo, no caso onde o dobro da altura do bloco de croma atual é dobro do valor específico ou menos, o número de amostra pode ser derivado como o dobro da altura.
[0581] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior, o aparelho de decodificação pode derivar o número de amostra com base na largura do bloco de croma atual e o valor específico.
[0582] Como um exemplo, o aparelho de decodificação pode derivar o número de amostra das amostras de croma vizinhas comparando-se o dobro da largura e o dobro do valor específico. Por exemplo, no caso onde dobro da largura do bloco de croma atual é maior que o dobro do valor específico, o número de amostra pode ser derivado como o dobro do valor específico. Ademais, por exemplo, no caso onde dobro da largura do bloco de croma atual é o dobro do valor específico ou menos, o número de amostra pode ser derivado como o dobro da largura.
[0583] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, o aparelho de decodificação pode derivar o número de amostra das amostras de croma vizinhas superiores e das amostras de croma vizinhas esquerdas comparando-se a largura e a altura com o valor específico.
[0584] Por exemplo, no caso onde a largura e a altura do bloco de croma atual são maiores que o valor específico, o número de amostra pode ser derivado como o valor específico.
[0585] Ademais, por exemplo, no caso onde a largura e a altura do bloco de croma atual consistem em um valor específico ou menos, o número de amostra pode ser derivado como um valor da largura e da altura. Como um exemplo, o número de amostra pode ser derivado como o valor menor da largura e da altura.
[0586] Entretanto, o valor específico pode ser derivado para derivar os parâmetros de CCLM do bloco de croma atual. No presente documento, o valor específico pode ser referido como um limite superior do número de amostra vizinha ou um número máximo de amostra vizinha. Como um exemplo, o valor específico pode ser derivado como 2. Ou, o valor específico pode ser derivado como 4, 8 ou 16.
[0587] Além disso, por exemplo, o valor específico pode ser derivado como um valor predeterminado. Ou seja, o valor específico pode ser derivado como um valor que é esperado entre o aparelho de codificação e o aparelho de decodificação. Em outras palavras, o valor específico pode ser derivado como um valor predeterminado para o bloco de croma atual ao qual o modo de CCLM é aplicado.
[0588] Alternativamente, por exemplo, o aparelho de decodificação pode obter as informações relacionadas à predição através de um fluxo de bits. Em outras palavras, as informações de vídeo podem incluir as informações que representam o valor específico, e o valor específico pode ser derivado com base nas informações que representam o valor específico. As informações que representam o valor específico podem ser sinalizadas em uma unidade de codificação (CU). Ou, as informações que representam o valor específico podem ser sinalizadas em uma unidade de cabeçalho de fatia, Conjunto de Parâmetros de Gravura (PPS) ou Conjunto de Parâmetros de Sequência (SPS). Ou seja, as informações que representam o valor específico podem ser sinalizadas com um cabeçalho de fatia, um Conjunto de Parâmetros de Gravura (PPS) ou um Conjunto de Parâmetros de Sequência (SPS).
[0589] Alternativamente, por exemplo, o aparelho de decodificação pode obter informações de indicador que representam se o número de amostras de referência vizinhas é derivado com base no valor específico através de um fluxo de bits. Em outras palavras, as informações de vídeo podem incluir as informações de indicador que representam se o número de amostras de referência vizinhas é derivado com base no valor específico, e no caso onde o valor de informações de indicador é 1, as informações de vídeo podem incluir as informações que representam o valor específico, e o valor específico pode ser derivado com base nas informações que representam o valor específico. Entretanto, no caso onde o valor de informações de indicador é 0, as informações de indicador podem representar que o número de amostras de referência vizinhas não é derivado com base no valor específico. As informações de indicador e/ou as informações que representam o valor específico podem ser sinalizadas em uma unidade de codificação (CU). Ou, as informações de indicador e/ou as informações que representam o valor específico podem ser sinalizadas em uma unidade de cabeçalho de fatia, Conjunto de Parâmetros de Gravura (PPS) ou Conjunto de Parâmetros de Sequência (SPS). Ou seja, as informações de indicador e/ou as informações que representam o valor específico podem ser sinalizadas com um cabeçalho de fatia, um PPS ou um SPS.
[0590] Alternativamente, por exemplo, o valor específico pode ser derivado com base em um tamanho do bloco de croma atual.
[0591] Como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0592] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 8, o valor específico pode ser derivado como 4, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 8, o valor específico pode ser derivado como 8.
[0593] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 2.
[0594] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2 ou menos, o valor específico pode ser derivado como 1, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 4.
[0595] Além disso, como um exemplo, no caso onde um tamanho do bloco de croma atual é 2x2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 4.
[0596] Além disso, como um exemplo, no caso onde um tamanho do bloco de croma atual é 2x2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 2, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0597] Além disso, como um exemplo, no caso onde um tamanho do bloco de croma atual é 2x2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 2, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 4, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0598] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 1, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0599] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 2, o valor específico pode ser derivado como 1, e no caso onde um valor menor entre a largura e a altura do bloco de croma atual é 4, o valor específico pode ser derivado como 2.
[0600] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 4, o valor específico pode ser derivado como 4.
[0601] Além disso, como um exemplo, no caso onde um valor menor entre a largura e a altura do bloco de croma atual é maior que 2, o valor específico pode ser derivado como 2.
[0602] Além disso, como um exemplo, o valor específico pode ser derivado com base em se um valor menor entre a largura e a altura do bloco atual é maior que a valor limiar específico. Por exemplo, no caso onde um valor menor entre a largura e a altura do bloco atual é maior que a valor limiar específico, o valor limiar específico pode ser derivado como 4, no caso onde um valor menor entre a largura e a altura do bloco atual é um valor limiar específico ou menos, o valor limiar específico pode ser derivado como 2. O valor limiar específico pode ser derivado como um valor predeterminado. Ou seja, o valor limiar específico pode ser derivado como um valor que é esperado entre o aparelho de codificação e o aparelho de decodificação. Alternativamente, por exemplo, as informações de vídeo podem incluir as informações que representam o valor limiar específico. Nesse caso, o valor limiar específico pode ser derivado com base nas informações que representam o valor limiar específico. Por exemplo, o valor limiar específico derivado pode ser 4 ou 8.
[0603] O aparelho de decodificação pode derivar as amostras de croma vizinhas do número de amostra (etapa, S2630). O aparelho de decodificação pode derivar as amostras de croma vizinhas do número de amostra.
[0604] Por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior esquerdo, o aparelho de decodificação pode derivar amostras de croma vizinhas esquerdas do número de amostra e as amostras de croma vizinhas superiores do número de amostra. Particularmente, no caso onde um tamanho do bloco de croma atual é NxM, o aparelho de codificação pode derivar as amostras de croma vizinhas superiores do número de amostra dentre N amostras de croma vizinhas superiores e derivar as amostras de croma vizinhas esquerdas do número de amostra dentre N amostras de croma vizinhas esquerdas. No presente documento, N pode ser igual ou menor que M.
[0605] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM superior, o aparelho de decodificação pode derivar as amostras de croma vizinhas superiores do número de amostra. Particularmente, no caso onde um tamanho do bloco de croma atual é NxM, o aparelho de decodificação pode derivar as amostras de croma vizinhas superiores do número de amostra dentre 2N amostras de croma vizinhas superiores. No presente documento, N pode ser igual ou menor que M.
[0606] Além disso, por exemplo, no caso onde o modo de predição de CCLM do bloco de croma atual é o modo LM esquerdo, o aparelho de decodificação pode derivar as amostras de croma vizinhas esquerdas do número de amostra. Particularmente, no caso onde um tamanho do bloco de croma atual é MxN, o aparelho de decodificação pode derivar as amostras de croma vizinhas esquerdas do número de amostra dentre 2N amostras de croma vizinhas esquerdas. No presente documento, N pode ser igual ou menor que M.
[0607] O aparelho de decodificação pode derivar as amostras de luma vizinhas amostradas descendentemente e as amostras de luma amostradas descendentemente do bloco de luma atual (etapa, S2640). No presente documento, as amostras de luma vizinhas podem corresponder às amostras de croma vizinhas. Por exemplo, as amostras de luma vizinhas amostradas descendentemente podem incluir amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas superiores e amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas esquerdas.
[0608] Ou seja, por exemplo, as amostras de luma vizinhas podem incluir amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas superiores e amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas esquerdas.
[0609] Alternativamente, por exemplo, as amostras de luma vizinhas amostradas descendentemente podem incluir amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas superiores. Ou seja, por exemplo, as amostras de luma vizinhas podem incluir amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas superiores.
[0610] Alternativamente, por exemplo, as amostras de luma vizinhas amostradas descendentemente podem incluir amostras de luma vizinhas amostradas descendentemente do bloco de luma atual correspondentes às amostras de croma vizinhas esquerdas. Ou seja, por exemplo, as amostras de luma vizinhas podem incluir amostras de luma vizinhas amostradas descendentemente do número de amostra correspondentes às amostras de croma vizinhas esquerdas.
[0611] O aparelho de decodificação deriva parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente (etapa, S2650). O aparelho de decodificação pode derivar os parâmetros de CCLM com base nas amostras de croma vizinhas e nas amostras de luma vizinhas amostradas descendentemente. Por exemplo, os parâmetros de CCLM podem ser derivados com base na Equação 3 descrita acima. Alternativamente, por exemplo, os parâmetros de CCLM podem ser derivados com base na Equação 4 descrita acima.
[0612] O aparelho de decodificação deriva amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e as amostras de luma amostradas descendentemente (etapa, S2660). O aparelho de decodificação pode derivar as amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e nas amostras de luma amostradas descendentemente. O aparelho de decodificação pode aplicar o CCLM derivado pelos parâmetros de CCLM à amostra de luma auto-amostrada e gerar amostras de predição para o bloco de croma atual. Ou seja, o aparelho de decodificação pode realizar uma predição de CCLM com base nos parâmetros de CCLM e gerar amostras de predição para o bloco de croma atual. Por exemplo, as amostras de predição podem ser derivadas com base na Equação 1 descrita acima.
[0613] O aparelho de decodificação gera amostras reconstruídas para o bloco de croma atual com base nas amostras de predição (etapa, S2670). O aparelho de decodificação pode gerar as amostras reconstruídas com base nas amostras de predição. Por exemplo, o aparelho de decodificação pode receber informações para um residual para o bloco de croma atual a partir do fluxo de bits. As informações para o residual podem incluir um coeficiente de transformada para a amostra residual de (croma). O aparelho de decodificação pode derivar a amostra residual (ou arranjo de amostra residual) para o bloco de croma atual com base nas informações residuais. Nesse caso, o aparelho de decodificação pode gerar as amostras reconstruídas com base nas amostras de predição e no residual amostrado. O aparelho de decodificação pode derivar um bloco reconstruído ou uma Gravura reconstruída com base na amostra reconstruída. A seguir, o aparelho de decodificação pode aplicar o procedimento de filtragem em laço tal como filtragem de desbloqueio e/ou processo SAO à Gravura reconstruída para aperfeiçoar qualidade de imagem subjetiva/objetiva, conforme descrito acima.
[0614] A Figura 27 ilustra esquematicamente um aparelho de decodificação para realizar um método de decodificação de vídeo de acordo com a presente revelação. O método mostrado na Figura 26 pode ser realizado pelo aparelho de decodificação mostrado na Figura 27. Em um exemplo específico, o decodificador de entropia do aparelho de decodificação da Figura 27 pode realizar a etapa S2600 da Figura 26, o preditor do aparelho de decodificação da Figura 27 pode realizar as etapas S2610 a S2660 da Figura 26, e o adicionador do aparelho de decodificação da Figura 27 pode realizar a etapa S2670 da Figura 26. Além disso, embora não seja mostrado nos desenhos, o processo de adquirir informações para residual do bloco atual através de um fluxo de bits pode ser realizado pelo decodificador de entropia do aparelho de decodificação, e o processo de derivar a amostra residual para o bloco atual com base nas informações residuais pode ser realizado pelo transformador inverso do aparelho de decodificação da Figura 27.
[0615] De acordo com a presente revelação descrita acima, uma intrapredição é realizada com base em CCLM, e uma eficiência de codificação de vídeo pode ser aperfeiçoada.
[0616] Além disso, de acordo com a presente revelação, a eficiência de intrapredição pode ser aperfeiçoada, que se baseia em CCLM incluindo uma pluralidade de modos LM, ou seja, Modelo Linear Multi-Direcional (MDLM).
[0617] Além disso, de acordo com a presente revelação, o número de amostras vizinhas selecionado para derivar um parâmetro de modelo linear para um Modelo Linear Multi-Direcional (MDLM) realizado em um bloco de croma tendo um tamanho grande é limitado a um número específico, e, de modo correspondente, a complexidade de intrapredição pode ser reduzida.
[0618] Na modalidade descrita anteriormente, os métodos são descritos com base no fluxograma tendo uma série de etapas ou blocos. A presente revelação não é limitada à ordem das etapas ou blocos acima. Algumas etapas ou blocos podem ocorrer simultaneamente ou em uma ordem diferente de outras etapas ou blocos conforme descrito acima. Ademais, os indivíduos versados na técnica compreenderão que as etapas mostradas no fluxograma acima não são exclusivas, que etapas adicionais podem ser incluídas, ou que uma ou mais etapas no fluxograma podem ser excluídas sem afetar o escopo da presente revelação.
[0619] As modalidades descritas neste relatório descritivo podem ser realizadas sendo implementadas em um processador, um microprocessador, um controlador ou um chip. Por exemplo, as unidades funcionais mostradas em cada desenho podem ser realizadas sendo implementadas em um computador, um processador, um microprocessador, um controlador ou um chip. Nesse caso, as informações para implementação (por exemplo, informações ou instruções) ou algoritmo podem ser armazenadas em uma mídia de armazenamento digital.
[0620] Além disso, o dispositivo de decodificação e o dispositivo de codificação aos quais a presente revelação é aplicada podem ser incluídos em um aparelho de transmissão/recepção de radiodifusão de multimídia, um terminal de comunicação móvel, um aparelho de vídeo de cinema doméstico, um aparelho de vídeo de cinema digital, uma câmera de vigilância, um aparelho de conversa por vídeo, um aparelho de comunicação em tempo real como comunicação por vídeo, um aparelho de streaming móvel, uma mídia de armazenamento, uma gravadora, um aparelho provedor de serviço VoD, um aparelho de vídeo Over-the-Top (OTT), um aparelho provedor de serviços de streaming da Internet, um aparelho de vídeo tridimensional (3D), um aparelho de vídeo de teleconferência, um equipamento de usuário para transporte (por exemplo, equipamento de usuário em veículo, um equipamento de usuário em avião, um equipamento de usuário em navio, etc.) e um aparelho de vídeo médico e podem ser usados para processar sinais de vídeo e sinais de dados. Por exemplo, o aparelho de vídeo Over-the-Top (OTT) pode incluir um console de jogos, um reprodutor Blu-ray, uma TV com acesso à internet, um sistema de cinema em casa (home-theater), um smartphone, um PC tablet, um Gravador de Vídeo Digital (DVR), e similares.
[0621] Adicionalmente, o método de processamento ao qual a presente revelação se aplica pode ser produzido sob a forma de um programa que deve ser executado por um computador e pode ser armazenado em uma mídia de gravação legível por computador. Os dados multimídia tendo uma estrutura de dados de acordo com a presente revelação também podem ser armazenados em uma mídia de gravação legível por computador. A mídia de gravação legível por computador inclui todos os tipos de dispositivos de armazenamento onde dados legíveis por um sistema computacional são armazenados. A mídia de gravação legível por computador pode incluir um BD, um Barramento Serial Universal (USB), ROM, PROM, EPROM, EEPROM, RAM, CD-ROM, uma fita magnética, um disquete flexível, e um dispositivo de armazenamento de dados ópticos, por exemplo. Adicionalmente, a mídia de gravação legível por computador inclui mídias implementadas sob a forma de ondas portadoras (por exemplo, transmissão através da Internet). Além disso, um fluxo de bits gerado pelo método de codificação pode ser armazenado em uma mídia de gravação legível por computador ou pode ser transmitido pelas redes de comunicação com/sem fio.
[0622] Além disso, as modalidades da presente revelação podem ser implementadas com um produto de programa de computador de acordo com os códigos de programa, e os códigos de programa podem ser realizados em um computador pelas modalidades da presente revelação. Os códigos de programa podem ser armazenados em uma portadora que seja legível por um computador.
[0623] A Figura 28 ilustra um diagrama estrutural de um sistema de streaming de conteúdos ao qual a presente revelação é aplicada.
[0624] O sistema de streaming de conteúdos ao qual as modalidades do presente documento se aplicam pode incluir em grande parte um servidor de codificação, um servidor de streaming, um servidor da web, um armazenamento de mídia, um dispositivo de usuário, e um dispositivo de entrada de multimídia.
[0625] O servidor de codificação compacta entrada de conteúdo a partir de dispositivos de entrada de multimídia como um smartphone, uma câmera, uma gravadora, etc. em dados digitais para gerar um fluxo de bits e transmitir o fluxo de bits ao servidor de streaming. Como outro exemplo, quando os dispositivos de entrada de multimídia como smartphones, câmeras, gravadoras, etc. gerarem diretamente um fluxo de bits, o servidor de codificação pode ser omitido.
[0626] O fluxo de bits pode ser gerado por um método de codificação ou um método de geração de fluxo de bits ao qual as modalidades da presente documento se aplicam, e o servidor de streaming pode armazenar temporariamente o fluxo de bits no processo de transmitir ou receber o fluxo de bits.
[0627] O servidor de streaming transmite os dados multimídia ao dispositivo de usuário com base em uma solicitação do usuário através do servidor da web, e o servidor da web serve como uma mídia para informar ao usuário de um serviço. Quando o usuário solicitar um serviço desejado a partir do servidor da web, o servidor da web o entrega a um servidor de streaming, e o servidor de streaming transmite dados multimídia ao usuário. Nesse caso, o sistema de streaming de conteúdos inclui um servidor de controle separado. Nesse caso, o servidor de controle serve para controlar um comando/resposta entre dispositivos no sistema de streaming de conteúdo.
[0628] O servidor de streaming pode receber conteúdo a partir de um armazenamento de mídia e/ou um servidor de codificação. Por exemplo, quando o conteúdo for recebido a partir do servidor de codificação, o conteúdo pode ser recebido em tempo real. Nesse caso, a fim de proporcionar um serviço de streaming suave, o servidor de streaming pode armazenar o fluxo de bits por um tempo predeterminado.
[0629] Exemplos do dispositivo de usuário podem incluir um telefone móvel, um smartphone, um computador laptop, um terminal de radiodifusão digital, um assistente pessoal digital (PDA), um reprodutor de multimídia portátil (PMP), navegação, um PC slate, PCs tablet, ultrabooks, dispositivos vestíveis (ex. relógios inteligentes, óculos inteligentes, telas montadas à cabeça), TVs digitais, computadores desktop, sinalização digital, e similares. Cada servidor no sistema de streaming de conteúdo ode ser operado como um servidor distribuído, sendo que nesse caso dados recebidos a partir de cada servidor podem ser distribuídos.

Claims (15)

1. Método de decodificação de vídeo realizado por um aparelho de decodificação, o método CARACTERIZADO pelo fato de que compreende: obter informações de vídeo que compreendem informações de modo de predição para um bloco de croma atual; derivar um modo de predição de modelo linear de componente cruzado superior (CCLM) como um modo de intrapredição do bloco de croma atual com base nas informações do modo de predição; derivar um número de amostra de amostras de croma vizinhas superiores do bloco de croma atual com base em uma largura do bloco de croma atual e um valor específico; derivar as amostras de croma vizinhas superiores do número de amostra; derivar amostras de luma vizinhas superiores amostradas descendentemente (down sampled) relacionadas com as amostras de croma vizinhas superiores e amostras de luma amostradas descendentemente de um bloco de luma atual; derivar parâmetros de CCLM com base nas amostras de croma vizinhas superiores e nas amostras de luma vizinhas superiores amostradas descendentemente; derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e nas amostras de luma amostradas descendentemente; e gerar amostras reconstruídas para o bloco de croma atual com base nas amostras de predição, em que o valor específico é derivado como 2, em que a largura do bloco de croma atual é N, em que com base em 2N sendo menor que ou igual a duas vezes o valor específico, o número de amostra das amostras de croma vizinhas superiores é derivado como 2N, e com base no 2N sendo maior que duas vezes o valor específico, o número de amostra das amostras de croma vizinhas superiores é derivado como 4.
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações de modo de predição incluem informações de índice indicando um dentre os modos de predição de CCLM, e em que os modos de predição de CCLM incluem um modo CCLM superior esquerdo, um modo CCLM superior e um modo CCLM esquerdo.
3. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o valor específico é derivado como um valor predeterminado para o bloco de croma atual ao qual o modo CCLM superior é aplicado.
4. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações sobre o valor específico são sinalizadas em uma unidade de unidade de codificação (CU).
5. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações sobre o valor específico são sinalizadas com um cabeçalho de fatia, um Conjunto de Parâmetros de Gravura (Picture) (PPS) e um Conjunto de Parâmetros de Sequência (SPS).
6. Método de codificação de vídeo realizado por um aparelho de codificação, CARACTERIZADO pelo fato de que o método compreende: derivar um modo de predição de modelo linear de componente cruzado superior (CCLM) como um modo de intrapredição do bloco de croma atual; derivar um número de amostra de amostras de croma vizinhas superiores do bloco de croma atual com base em uma largura do bloco de croma atual e um valor específico; derivar as amostras de croma vizinhas superiores do número de amostra; derivar amostras de luma vizinhas superiores amostradas descendentemente (down sampled) relacionadas com as amostras de croma vizinhas superiores e amostras de luma amostradas descendentemente de um bloco de luma atual; derivar parâmetros de CCLM com base nas amostras de croma vizinhas superiores e nas amostras de luma vizinhas superiores amostradas descendentemente; derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e nas amostras de luma amostradas descendentemente; e codificar informações de vídeo incluindo informações de modo de predição para o bloco de croma atual, em que o valor específico é derivado como 2, em que a largura do bloco de croma atual é N, em que com base em 2N sendo menor ou igual a duas vezes o valor específico, o número de amostra das amostras de croma vizinhas superiores é derivado como 2N, e com base no 2N sendo maior que duas vezes o valor específico, o número de amostra das amostras de croma vizinhas superiores é derivado como 4.
7. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de que as informações de modo de predição incluem informações de índice indicando um dentre os modos de predição de CCLM, e em que os modos de predição de CCLM incluem um modo CCLM superior esquerdo, um modo CCLM superior e um modo CCLM esquerdo.
8. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de que o valor específico é derivado como um valor predeterminado para o bloco de croma atual ao qual o modo CCLM superior é aplicado.
9. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de que as informações sobre o valor específico são sinalizadas em uma unidade de unidade de codificação (CU).
10. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de que informações sobre o valor específico são sinalizadas com um cabeçalho de fatia, um Conjunto de Parâmetros de Gravura (Picture) (PPS) e um Conjunto de Parâmetros de Sequência (SPS).
11. Mídia de armazenamento legível por computador não transitória CARACTERIZADA pelo fato de que armazena um fluxo de bits gerado por um método, o método compreendendo: derivar um modo de predição de modelo linear de componente cruzado superior (CCLM) como um modo de intrapredição do bloco de croma atual; derivar um número de amostra de amostras de croma vizinhas superiores do bloco de croma atual com base em uma largura do bloco de croma atual e um valor específico; derivar as amostras de croma vizinhas superiores do número de amostra; derivar amostras de luma vizinhas superiores amostradas descendentemente relacionadas com as amostras de croma vizinhas superiores e amostras de luma amostradas descendentemente de um bloco de luma atual; derivar parâmetros de CCLM com base nas amostras de croma vizinhas superiores e nas amostras de luma vizinhas superiores amostradas descendentemente; derivar amostras de predição para o bloco de croma atual com base nos parâmetros de CCLM e nas amostras de luma amostradas descendentemente; codificar informações de vídeo incluindo informações de modo de predição para o bloco de croma atual; e gerar o fluxo de bits incluindo as informações de vídeo, em que o valor específico é derivado como 2, em que a largura do bloco de croma atual é N, em que com base em 2N sendo menor ou igual a duas vezes o valor específico, o número de amostra das amostras de croma vizinhas superiores é derivado como 2N, e com base no 2N sendo maior que duas vezes o valor específico, o número de amostra das amostras de croma vizinhas superiores é derivado como 4.
12. Mídia de armazenamento legível por computador não transitória, de acordo com a reivindicação 11, CARACTERIZADA pelo fato de que as informações de modo de predição incluem informações de índice indicando um dentre os modos de predição de CCLM, e em que os modos de predição de CCLM incluem um modo CCLM superior esquerdo, um modo CCLM superior e um modo CCLM esquerdo.
13. Mídia de armazenamento legível por computador não transitória, de acordo com a reivindicação 11, CARACTERIZADA pelo fato de que o valor específico é derivado como um valor predeterminado para o bloco de croma atual ao qual o modo CCLM superior é aplicado.
14. Mídia de armazenamento legível por computador não transitória, de acordo com a reivindicação 11, CARACTERIZADA pelo fato de que as informações sobre o valor específico são sinalizadas em uma unidade de unidade de codificação (CU).
15. Mídia de armazenamento legível por computador não transitória, de acordo com a reivindicação 11, CARACTERIZADA pelo fato de que as informações sobre o valor específico são sinalizadas com um cabeçalho de fatia, um Conjunto de Parâmetros de Gravura (Picture) (PPS) e um Conjunto de Parâmetros de Sequência (SPS).
BR122021014718-3A 2018-11-23 2019-11-11 Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória BR122021014718B1 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201862770835P 2018-11-23 2018-11-23
US62/770,835 2018-11-23
PCT/KR2019/015253 WO2020105925A1 (ko) 2018-11-23 2019-11-11 영상 코딩 시스템에서 cclm 예측 기반 영상 디코딩 방법 및 그 장치

Publications (1)

Publication Number Publication Date
BR122021014718B1 true BR122021014718B1 (pt) 2022-12-06

Family

ID=70773851

Family Applications (3)

Application Number Title Priority Date Filing Date
BR112020012022-7A BR112020012022B1 (pt) 2018-11-23 2019-11-11 Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e meio legível por computador
BR122021014717-5A BR122021014717B1 (pt) 2018-11-23 2019-11-11 Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória
BR122021014718-3A BR122021014718B1 (pt) 2018-11-23 2019-11-11 Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória

Family Applications Before (2)

Application Number Title Priority Date Filing Date
BR112020012022-7A BR112020012022B1 (pt) 2018-11-23 2019-11-11 Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e meio legível por computador
BR122021014717-5A BR122021014717B1 (pt) 2018-11-23 2019-11-11 Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória

Country Status (14)

Country Link
US (4) US11012699B2 (pt)
EP (2) EP3709645B1 (pt)
JP (3) JP7018139B2 (pt)
KR (3) KR102637084B1 (pt)
CN (3) CN116916016A (pt)
AU (2) AU2019383886B2 (pt)
BR (3) BR112020012022B1 (pt)
CA (2) CA3085391C (pt)
ES (1) ES2934966T3 (pt)
HU (1) HUE060910T2 (pt)
MX (1) MX2020005865A (pt)
PL (1) PL3709645T3 (pt)
TW (2) TWI732355B (pt)
WO (1) WO2020105925A1 (pt)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11178396B2 (en) * 2018-11-14 2021-11-16 Tencent America LLC Constrained intra prediction and unified most probable mode list generation
CN113068025B (zh) * 2018-12-25 2023-05-12 Oppo广东移动通信有限公司 解码预测方法、装置及计算机存储介质
AU2019417996A1 (en) * 2019-01-02 2021-07-22 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Prediction decoding method, device and computer storage medium
KR20220027851A (ko) * 2019-06-28 2022-03-08 바이트댄스 아이엔씨 화면 콘텐츠 코딩에서의 크로마 인트라 모드 도출
US20220092827A1 (en) * 2020-09-23 2022-03-24 Electronics And Telecommunications Research Institute Method, apparatus, system and computer-readable recording medium for feature information
WO2022191553A1 (ko) * 2021-03-08 2022-09-15 현대자동차주식회사 행렬 기반 크로스 컴포넌트 예측을 이용하는 비디오 코딩방법 및 장치
WO2024080828A1 (ko) * 2022-10-13 2024-04-18 한국전자통신연구원 영상 부호화/복호화를 위한 방법, 장치 및 기록 매체
CN115988206B (zh) * 2023-03-21 2024-03-26 深圳传音控股股份有限公司 图像处理方法、处理设备及存储介质

Family Cites Families (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101138392B1 (ko) 2004-12-30 2012-04-26 삼성전자주식회사 색차 성분의 상관관계를 이용한 컬러 영상의 부호화,복호화 방법 및 그 장치
CN105472387B (zh) 2010-04-09 2018-11-02 Lg电子株式会社 处理视频数据的方法和装置
JP2013034163A (ja) * 2011-06-03 2013-02-14 Sony Corp 画像処理装置及び画像処理方法
US9693070B2 (en) * 2011-06-24 2017-06-27 Texas Instruments Incorporated Luma-based chroma intra-prediction for video coding
CA2840488A1 (en) * 2011-06-28 2013-01-03 Samsung Electronics Co., Ltd. Prediction method and apparatus for chroma component of image using luma component of image
US9307237B2 (en) 2012-01-19 2016-04-05 Futurewei Technologies, Inc. Reference pixel reduction for intra LM prediction
HUE063933T2 (hu) * 2012-06-29 2024-02-28 Electronics & Telecommunications Res Inst Eljárás és eszköz képek kódolására/dekódolására
CN105474639B (zh) * 2013-07-10 2018-08-07 凯迪迪爱通信技术有限公司 视频编码装置、视频解码装置、视频系统、视频编码方法、视频解码方法以及程序
US9998742B2 (en) * 2015-01-27 2018-06-12 Qualcomm Incorporated Adaptive cross component residual prediction
US10455249B2 (en) * 2015-03-20 2019-10-22 Qualcomm Incorporated Downsampling process for linear model prediction mode
US10652575B2 (en) * 2016-09-15 2020-05-12 Qualcomm Incorporated Linear model chroma intra prediction for video coding
WO2018116925A1 (ja) 2016-12-21 2018-06-28 シャープ株式会社 イントラ予測画像生成装置、画像復号装置、および画像符号化装置
US11025903B2 (en) * 2017-01-13 2021-06-01 Qualcomm Incorporated Coding video data using derived chroma mode
PL3840377T3 (pl) * 2018-09-20 2023-07-31 Lg Electronics Inc. Sposób i urządzenie do dekodowania obrazu na podstawie predykcji cclm w systemie kodowania obrazu
CN112997492B (zh) * 2018-11-06 2024-02-20 北京字节跳动网络技术有限公司 帧内预测的简化参数推导

Also Published As

Publication number Publication date
KR102415322B1 (ko) 2022-06-30
EP3709645A1 (en) 2020-09-16
KR20220098266A (ko) 2022-07-11
CA3213928A1 (en) 2020-05-28
CA3085391A1 (en) 2020-05-28
PL3709645T3 (pl) 2023-02-20
US11012699B2 (en) 2021-05-18
AU2021206901B2 (en) 2022-08-04
TWI784561B (zh) 2022-11-21
CN111587574A (zh) 2020-08-25
TW202027506A (zh) 2020-07-16
JP7421673B2 (ja) 2024-01-24
AU2021206901A1 (en) 2021-08-12
KR102637084B1 (ko) 2024-02-15
AU2019383886B2 (en) 2021-04-29
EP4120680A1 (en) 2023-01-18
EP3709645A4 (en) 2021-07-14
KR102524061B1 (ko) 2023-04-21
AU2019383886A1 (en) 2020-06-18
US11412236B2 (en) 2022-08-09
CA3085391C (en) 2023-10-24
TWI732355B (zh) 2021-07-01
ES2934966T3 (es) 2023-02-28
BR112020012022A2 (pt) 2021-06-22
BR112020012022B1 (pt) 2022-12-06
KR20230058177A (ko) 2023-05-02
MX2020005865A (es) 2020-09-09
US11706426B2 (en) 2023-07-18
JP7234425B2 (ja) 2023-03-07
EP3709645B1 (en) 2022-10-19
CN116916016A (zh) 2023-10-20
US11956451B2 (en) 2024-04-09
JP2023054264A (ja) 2023-04-13
JP7018139B2 (ja) 2022-02-09
TW202308385A (zh) 2023-02-16
CN111587574B (zh) 2023-06-16
TW202143720A (zh) 2021-11-16
US20200296391A1 (en) 2020-09-17
EP4120680B1 (en) 2024-01-31
JP2022070864A (ja) 2022-05-13
US20220248036A1 (en) 2022-08-04
CN116939201A (zh) 2023-10-24
US20210176480A1 (en) 2021-06-10
HUE060910T2 (hu) 2023-04-28
JP2021510245A (ja) 2021-04-15
BR122021014717B1 (pt) 2022-12-06
WO2020105925A1 (ko) 2020-05-28
KR20200074218A (ko) 2020-06-24
US20230308665A1 (en) 2023-09-28

Similar Documents

Publication Publication Date Title
BR122021014718B1 (pt) Método de decodificação de vídeo realizado por um aparelho de decodificação, método de codificação de vídeo realizado por um aparelho de codificação e mídia de armazenamento legível por computador não transitória
BR122022004891B1 (pt) Métodos de decodificação/codificação de imagem realizado por um aparelho de decodificação/codificação, aparelhos de decodificação/codificação para decodificar/codificar imagem, método de transmissão de dados para imagem e meio de armazenamento não transitório legível por computador
BR122022002075B1 (pt) Método de decodificação/codificação de imagem realizado por um aparelho de decodificação/codificação, aparelho de decodificação/codificação para decodificação/codificação de imagem, método de transmissão de dados para imagem e mídia de armazenamento legível por computador não transitória
TWI842133B (zh) 用於硬體實施的高效cclm參數導出方法
BR112021005293B1 (pt) Método de decodificação/codificação de imagem realizado por um aparelho de decodificação/codificação e meio de armazenamento não transitório legível por computador
RU2773521C1 (ru) Способ для декодирования изображения на основе предсказания взаимно-компонентной линейной модели в системе кодирования изображения и устройство для этого
RU2794202C2 (ru) Способ для декодирования изображения на основе предсказания взаимно-компонентной линейной модели в системе кодирования изображения и устройство для этого

Legal Events

Date Code Title Description
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B09W Correction of the decision to grant [chapter 9.1.4 patent gazette]

Free format text: SOLICITADA A RETIFICACAO DO QR POR PARTE DA REQUERENTE (ERROS DE TRADUCAO E DIGITACAO).

B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

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