BR112019013797A2 - codificação de imagem e vídeo com predição intra de ângulo amplo - Google Patents

codificação de imagem e vídeo com predição intra de ângulo amplo Download PDF

Info

Publication number
BR112019013797A2
BR112019013797A2 BR112019013797A BR112019013797A BR112019013797A2 BR 112019013797 A2 BR112019013797 A2 BR 112019013797A2 BR 112019013797 A BR112019013797 A BR 112019013797A BR 112019013797 A BR112019013797 A BR 112019013797A BR 112019013797 A2 BR112019013797 A2 BR 112019013797A2
Authority
BR
Brazil
Prior art keywords
prediction
angle
wide
predicted
image block
Prior art date
Application number
BR112019013797A
Other languages
English (en)
Inventor
Lainema Jani
Original Assignee
Nokia Technologies Oy
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 Nokia Technologies Oy filed Critical Nokia Technologies Oy
Publication of BR112019013797A2 publication Critical patent/BR112019013797A2/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/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/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/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/13Adaptive entropy coding, e.g. adaptive variable length coding [AVLC] or context adaptive binary arithmetic coding [CABAC]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • 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/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/91Entropy coding, e.g. variable length coding [VLC] or arithmetic coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/30Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability

Landscapes

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

Abstract

codificação de imagem e vídeo com predição intra de ângulo amplo a invenção se refere a um método para decodificação, que compreende receber um fluxo de bits que compreende dados de imagem codificados, formar a partir do fluxo de bits em uma memória de computador um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem, predizer um valor de pixel em um bloco de imagem predito (p) por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados (410, 420) na formação de um valor de pixel predito, em que os pixels de referência selecionados (410, 420) são selecionados a partir de uma direção de predição em relação ao pixel predito, e em que a direção de predição entre o pixel de referência (410) e o pixel predito pode ser uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda, repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito, e usar o bloco de imagem predito (p) na decodificação de um bloco de imagem a partir do fluxo de bits para obter um bloco de imagem decodificado. um método correspondente para decodificação, bem como um decodificador, um codificador, produtos de programa de computador para o mesmo propósito e um sinal são fornecidos.

Description

CODIFICAÇÃO DE IMAGEM E VÍDEO COM PREDIÇÃO INTRA DE ÂNGULO AMPLO
Campo Técnico [0001] As várias modalidades descritas neste pedido se referem a codificação de vídeo e/ou imagem com base em predição intra direcional. Em diferentes aspectos, métodos, aparelhos, sistemas e produtos de programa de computador para usar a predição intra direcional em codificação de imagem e vídeo são descritos, bem como uma estrutura de dados ou sinal para a mesma.
Antecedentes [0002] Est a seção se destina a fornecer um antecedente ou contexto para a invenção, que é citada nas reivindicações. A descrição, no presente documento, pode incluir conceitos que podem ser buscados, mas não são necessariamente aqueles que foram anteriormente concebidos ou buscados. Portanto, a menos que seja indicado de outro modo no presente documento, o que é descrito nesta seção não é técnica anterior à descrição e reivindicações neste pedido e não se admite ser técnica anterior por inclusão nesta seção.
[0003] A predição intra direcional gera blocos de amostras preditas (isto é, valores de pixels) com base em amostras decodificadas ao redor do bloco ao extrapolar as amostras de borda direcionalmente dentro do bloco a ser predito. Esse bloco predito pode ser usado como uma base para codificar o bloco de imagem, e o erro de predição entre o bloco predito e o bloco original pode ser codificado em vez de codificar o bloco diretamente.
Petição 870190061960, de 03/07/2019, pág. 9/98
2/69
Geralmente, quanto melhor a predição, mais eficiente é a codificação da imagem. Imagens submetidas à codificação intra são tipicamente as maiores imagens codificadas, em comparação, por exemplo, a imagens submetidas à codificação inter.
[0004] Há, portanto, a necessidade de soluções que melhorem a codificação de imagens e vídeo com base em predição intra direcional.
Sumário [0005] Agora foi inventado um método e equipamento técnico de implementação do método melhorados, por meio dos quais os problemas acima são reduzidos. Vários aspectos da invenção incluem um método, um aparelho, um servidor, um cliente e uma mídia legível por computador que compreende um programa de computador armazenado na mesma, que são caracterizados pelo que é declarado nas reivindicações independentes. Várias modalidades da invenção são reveladas nas reivindicações dependentes.
[0006] No presente documento, são fornecidos métodos, aparelhos, sistemas, produtos de programa de computador e sinais para predição direcional intraimagem com direções de predição de ângulo amplo. Por ângulo amplo quer-se dizer que a direção, a partir da qual a referência a um pixel a ser predito é considerada, forma um ângulo obtuso com a direção superior esquerda (a direção no meio das direções para cima e para a esquerda) . Tal modo de predição de ângulo amplo (isto é, direção) pode ser codificado diretamente no fluxo de bits como um modo selecionado. As direções de ângulo amplo em uso, seu número e as direções exatas e sua probabilidade podem ser determinados pelo
Petição 870190061960, de 03/07/2019, pág. 10/98
3/69 formato do bloco a ser predito. Os modos de ângulo amplo podem corresponder a modos de ângulo estreito tradicionais ao ser seus modos invertidos. Tais modos invertidos podem ser opostos, essencialmente opostos ou em um ângulo, mas de alguma forma opostos aos modos de ângulo estreito primários. Pode-se escolher qual dentre os modos de ângulo amplo e primário usar.
[0007] De acordo com um primeiro aspecto, é fornecido um método para decodificação que compreende receber um fluxo de bits que compreende dados de imagem codificados, formar, a partir do fluxo de bits em uma memória de computador, um conjunto de pixels de referência que tem valores de pixel de referência para predição direcional intraimagem, predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do pixel predito, repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito, e usar o bloco de imagem predito na decodificação de um bloco de imagem a partir do fluxo de bits para obter um bloco de imagem decodificado.
[0008] 0 bloco de imagem predito pode ter um formato. 0 método pode compreender determinar o formato a partir do fluxo de bits. 0 método pode compreender determinar os modos de predição direcional a serem usados na predição
Petição 870190061960, de 03/07/2019, pág. 11/98
4/69 direcional intraimagem com base no formato, na predição do valor de pixel, selecionar a direção de predição a partir dos modos de predição direcional. 0 método pode compreender determinar os modos de predição a serem usados na predição direcional intraimagem, determinar os modos de predição prováveis com base no formato, decodificar um indicador a partir do fluxo de bits indicando se a direção de predição é uma dentre os modos de predição prováveis, e selecionar a direção de predição a partir dos modos de predição prováveis. 0 método pode compreender determinar os modos de predição direcional a serem usados na predição direcional intraimagem, decodificar um indicador de direção a partir do fluxo de bits, selecionar a direção de predição para a predição do valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo, sendo que a direção primária e uma direção de ângulo amplo são associadas ao indicador de direção. 0 método pode compreender decodificar um indicador de seleção de direção de predição a partir do fluxo de bits, e selecionar a direção de predição para a predição do valor de pixel a partir da direção normal e da direção de ângulo amplo usando o indicador de seleção de direção de predição. 0 método pode compreender selecionar a direção de predição para a predição do valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo com base no formato. A direção primária pode ser associada à direção de ângulo amplo, de modo que a direção primária e a direção de ângulo amplo sejam direções essencialmente opostas. A direção primária pode ser associada à direção de ângulo amplo, de modo que a direção primária e a direção de ângulo amplo sejam diferentes de
Petição 870190061960, de 03/07/2019, pág. 12/98
5/69 direções essencialmente opostas, e que a direção primária e a direção de ângulo amplo estejam em lados opostos da direção superior esquerda. Pode haver mais de uma direção de ângulo amplo associada a uma direção primária, ou mais de uma direção primária tem a mesma direção de ângulo amplo associada, ou ambas. 0 método pode compreender determinar os modos de predição a serem usados na predição direcional intraimagem, decodificar um indicador de direção a partir do fluxo de bits, formar uma direção de predição predita para a predição do valor de pixel entre uma direção normal e uma direção de ângulo amplo usando o formato, a direção normal e uma direção de ângulo amplo que são associadas ao indicador de direção, e selecionar a direção de predição com base na direção de predição predita.
[0009] De acordo com um segundo aspecto é fornecido um método de codificação, que compreende receber dados de imagem a serem codificados, formar, a partir dos dados de imagem em uma memória de computador, um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem, predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do pixel predito, repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito, usar o bloco de imagem
Petição 870190061960, de 03/07/2019, pág. 13/98
6/69 predito na codificação de um bloco de imagem em um fluxo de bits. 0 método de codificação pode compreender recursos similares ao método para decodificação como parte do método de codificação, conforme descrito nos exemplos numerados. [0010] De acordo com um terceiro aspecto, é fornecido um decodificador que é disposto para realizar o método para decodificação conforme descrito nos exemplos numerados.
[0011] De acordo com um quarto aspecto, é fornecido um codificador que é disposto para realizar o método de codificação conforme descrito nos exemplos numerados.
[0012] De acordo com um quinto aspecto, é fornecido um sistema para decodificar conforme descrito nos exemplos numerados.
[0013] De acordo com um sexto aspecto, é fornecido um sistema de codificação conforme descrito nos exemplos numerados.
[0014] De acordo com um sétimo aspecto, é fornecido a produto de programa de computador para decodificar conforme descrito nos exemplos numerados.
[0015] De acordo com um oitavo aspecto, é fornecido um produto de programa de computador para codificação conforme descrito nos exemplos numerados.
[0016] De acordo com um nono aspecto, é fornecido um sinal incorporado em uma mídia legível por computador não transitória conforme descrito nos exemplos numerados. Descrição dos Desenhos [0017] A seguir, várias modalidades da invenção serão descritas em mais detalhes com referência aos desenhos anexos, em que as Figs. la e 1b
Petição 870190061960, de 03/07/2019, pág. 14/98
7/69 mostram um sistema e dispositivos para codificação e decodificação de imagem ou vídeo;
as Figs. 2a e 2b mostram um diagrama de blocos de um codificador e um decodifiçador;
as Figs. 3a, 3b, 3c e 3d ilustram a predição intra direcional de uma imagem;
as Figs. 4a, 4b, 4c e 4d ilustram a predição intra direcional de ângulo amplo de uma imagem;
as Figs. 5a, 5b, 5c, 5d e 5e ilustram modos de predição intra direcional de ângulo amp1o; e as Figs. 6a, 6b, 6c e 6d mostram diagramas de fluxo de codificação e decodificação empregando a predição intra direcional de ângulo amplo.
Descrição de Modalidades Exemplificativas [0018] A seguir, várias modalidades da invenção serão descritas no contexto de codificação e decodificação de vídeo. Deve-se observar, no entanto, que a invenção não se limita à codificação e decodificação de vídeo, mas pode ser usada na codificação e decodificação de imagem estática, e na conversão (transcodificação) entre formatos de imagem e vídeo. De fato, as diferentes modalidades têm aplicações em qualquer ambiente em que a predição intra direcional para a codificação ou decodificação de imagem ou vídeo seja requerida.
[0019] As Figs. Ia e 1b mostram sistema e dispositivos para transmissão e/ou codificação de imagem e/ou vídeo de
Petição 870190061960, de 03/07/2019, pág. 15/98
8/69 acordo com exemplos. Na Fig. la, os diferentes dispositivos podem ser conectados por meio de uma rede fixa 110, como a Internet ou uma rede de área local; ou uma rede de comunicação móvel 120 como a rede do Sistema Global para Comunicações Móveis (GSM), rede de 3a Geração (3G), rede de 3,5a Geração (3,5G), rede de 4a Geração (4G), rede de 5a Geração (5G), Rede de Área Local Sem Fio (WLAN), Bluetooth® ou outras redes contemporâneas e futuras. Diferentes redes são conectadas entre si por meio de uma interface de comunicação 180. As redes compreendem elementos de rede como roteadores e comutadores para manipular dados, e interfaces de comunicação como as estações-base 130 e 131 a fim de fornecer acesso para os diferentes dispositivos à rede, e as próprias estações-base 130, 131 são conectadas à rede móvel 120 por meio de uma conexão fixa 17 6 ou de uma conexão sem fio 177.
[0020] Pode haver vários servidores conectados à rede e, no exemplo da Fig. la, são mostrados um servidor 140 para oferecer um serviço de rede para streaming ou acesso de imagem ou vídeo e conectado à rede fixa 110, um servidor
141 para processar (por exemplo, codificar ou transcodificar) dados de imagem/vídeo e conectado à rede fixa 110, e um servidor 142 para oferecer um serviço de rede, por exemplo, um serviço de compartilhamento de imagem/vídeo e conectado à rede móvel 120. Alguns dos dispositivos acima, por exemplo, os computadores 140, 141,
142 podem ser tais que componham a Internet com os elementos de comunicação que se encontram na rede fica ou sem fio 110.
[0021] Também há diversos dispositivos de usuário final
Petição 870190061960, de 03/07/2019, pág. 16/98
9/69 como telefones móveis e smart phones 151, dispositivos de acesso à Internet (computadores do tipo tablet de Internet) 150, computadores pessoais 160 de vários tamanhos e formatos, televisores e outros dispositivos de visualização 161, reprodutores e decodificadores de video 162, bem como câmeras de video 163 e outros codificadores. Esses dispositivos 150, 151, 160, 161, 162 e 163 também podem ser compostos de múltiplas partes. Os vários dispositivos podem ser conectados às redes 110 e 120 por meio de conexões de comunicação como uma conexão fixa 170, 171, 172 e 180 à internet, uma conexão sem fio 173 à internet 110, uma conexão fixa 175 à rede móvel 120 e uma conexão sem fio 178, 179 e 182 à rede móvel 120. As conexões 171-182 são implementadas por meio de interfaces de comunicação nas respectivas extremidades da conexão de comunicação. Os vários dispositivos podem criar, transformar, enviar, receber, decodificar e exibir imagens e video de acordo com os exemplos dados no presente documento.
[0022] A Fig. 1b mostra dispositivos para codificar e decodificar (bem como transcodificar, ou seja, decodificar e codificar em um formato diferente) dados de imagem ou video. Conforme mostrado na Fig. 1b, o servidor 140 contém memória 145, um ou mais processadores 146, 147 e código de programa de computador 148 que se encontra na memória 145 para implementar, por exemplo, a funcionalidade de codificação e/ou decodificação. Os diferentes servidores 141, 142 podem conter pelo menos esses mesmos elementos para empregar a funcionalidade relevante a cada servidor. De modo semelhante, o dispositivo de usuário final 151 contém memória 152, pelo menos um processador 153 e 156 e
Petição 870190061960, de 03/07/2019, pág. 17/98
10/69 código de programa de computador 154 que se encontra na memória 152 para implementar, por exemplo, codificação ou decodificação de dados de imagem a partir da câmera do dispositivo. O dispositivo de usuário final pode ter uma ou mais câmeras 155 e 159 para capturar dados de imagem, por exemplo, um fluxo de vídeo que compreende vários quadros, ou imagens estáticas. O dispositivo de usuário final também pode conter um, dois ou mais microfones 157 e 158 para capturar som. Os diferentes dispositivos de usuário final 150, 160 podem conter pelo menos esses mesmos elementos para empregar a funcionalidade relevante a cada dispositivo. Os dispositivos de usuário final também podem compreender uma tela para visualizar uma interface gráfica de usuário. Os servidores e dispositivos de usuário final também podem compreender vários módulos de comunicação ou funcionalidades de comunicação implementadas em um módulo para comunicação com outros dispositivos.
[0023] Os vários servidores e dispositivos de usuário final podem assumir a forma de dispositivos de comunicação, ou outros dispositivos que tenham capacidade de comunicação. Por exemplo, os dispositivos podem ser brinquedos, utensílios domésticos como máquinas de cozinha, dispositivos de entretenimento (TV, dispositivos de música/mídia) ou até partes do edifício, roupas, veículos ou quaisquer outros dispositivos que possam se comunicar entre si.
[0024] Deve-se entender que diferentes modalidades permitem que diferentes partes sejam realizadas em diferentes elementos. Por exemplo, o recebimento e transformação de dados de imagem (imagens ou vídeo) podem
Petição 870190061960, de 03/07/2019, pág. 18/98
11/69 ser realizados inteiramente em um dispositivo de usuário como 150, 151 ou 160, ou em um dispositivo de servidor 140, 141, ou 142, ou através de múltiplos dispositivos de usuário 150, 151, 160 ou através de múltiplos dispositivos de rede 140, 141, 142, ou tanto através de dispositivos de usuário 150, 151, 160 quanto de dispositivos de rede 140, 141, 142. Por exemplo, os dados de imagem (imagens ou video) podem ser formados e armazenados em um dispositivo, a codificação da imagem dados pode acontecer em outro dispositivo, e a decodif icação pode ser realizada em um terceiro dispositivo (por exemplo, um servidor). O software relevante para realizar a funcionalidade pode se encontrar em um dispositivo ou distribuído através de vários dispositivos, conforme mencionado acima, por exemplo, de modo que os dispositivos formem uma assim chamada nuvem.
[0025] As diferentes modalidades podem ser implementadas como software executado em dispositivos móveis e opcionalmente em servidores. Os telefones móveis podem ser equipados pelo menos com uma memória, processador, visor, teclado, hardware detector de movimento e meio de comunicação como 2G, 3G, WLAN ou outro. Os diferentes dispositivos podem ter hardware como uma tela sensível ao toque (único toque ou múltiplos toques) e meio para posicionamento como posicionamento de rede ou um módulo de sistema de posicionamento global (GPS). Pode haver vários
aplicativos nos dispositivos como um aplicativo de
calendário, um aplicativo de contatos , um aplicativo de
mapa, um aplicativo de mensagens, um aplicativo de
navegador, um aplicativo de galeria, um aplicativo de
reprodutor de video e vários outros aplicativos para uso
Petição 870190061960, de 03/07/2019, pág. 19/98
12/69 comercial e/ou privado. Os dispositivos podem ter vários módulos de comunicação para comunicação com outros dispositivos.
[0026] Um codec de vídeo consiste em um codificador que transforma o vídeo de entrada em uma representação compactada adequada para armazenamento/transmissão e um decodificador que pode descompactar a representação de vídeo compactada de volta para uma forma visível. Tipicamente, o codificador descarta algumas informações na sequência de vídeo original a fim de representar o vídeo em uma forma mais compacta (ou seja, em uma taxa de bits inferior).
[0027] Codecs de vídeo híbridos típicos, por exemplo, ITU-T H.263 e H.264, codificar as informações de vídeo em duas fases. Em primeiro lugar, os valores de pixel em uma determinada área de imagem (ou bloco) são preditos, por exemplo, por meio de compensação de movimento (encontrando e indicando uma área em um dos quadros de vídeo previamente codificados que corresponde de forma próxima ao bloco que está sendo codificado) ou por meio espacial (usando os valores de pixel ao redor do bloco a ser codificado de uma maneira especificada). Em segundo lugar, o erro de predição, isto é, a diferença entre o bloco de pixels predito e o bloco de pixels original, é codificado. Isso é tipicamente feito ao transformar a diferença em valores de pixel com o uso de uma transformada especificada (por exemplo, Transformada Discreta de Cosseno (DCT) ou uma variante da mesma), quantizando os coeficientes e codificando por entropia os coeficientes quantizados. Ao variar a fidelidade do processo de quantização, o
Petição 870190061960, de 03/07/2019, pág. 20/98
13/69 codificador pode controlar o equilíbrio entre a precisão da representação de pixel (qualidade de imagem) e o tamanho da representação de vídeo codificada resultante (tamanho de arquivo ou taxa de bits de transmissão).
[0028] 0 codificador e o método de codificação que o mesmo realiza são ilustrados na Figura 2a. Na Fig. 2a, a imagem a ser codificada ln é uma entrada para o codificador. A imagem de entrada pode ser uma imagem estática ou um quadro de um sinal de vídeo. Uma representação predita de um bloco de imagem P'n é formada, de modo que possa ser subtraída dos dados de imagem recebidos para obter um sinal de erro de predição Dn. 0 sinal de erro de predição é codificado com o uso de uma transformada T e quantização Q. Um sinal de erro de predição reconstruído D'n é obtido através de quantização inversa Q_1 e transformada inversa ΊΑ1 e usado para formar uma imagem reconstruída preliminar l'n. Uma representação predita de um bloco de imagem P'n pode ser obtida através de uma predição intra Pintra ou uma predição inter Pinter dependendo do modo (seleção de modo MS) . Em uma predição inter, filtragem F e memória de quadro de referência RFM são usadas para armazenar a imagem final reconstruída R'n conforme necessário. As imagens na memória de quadro de referência correspondem às imagens finalmente obtidas pelo decodificador como resultado do processo de decodificação. 0 erro de predição transformado e quantizado e a seleção de modo e outros parâmetros de codificação são submetidos à codificação por entropia pelo codificador por entropia E. 0 fluxo de bits resultante pode ser armazenado ou transmitido, e subsequentemente decodificado por um
Petição 870190061960, de 03/07/2019, pág. 21/98
14/69 decodifiçador.
[0029] Um codificador como na Fig. 2a pode compreender um decodificador que decodifica os dados de imagem codificados, de modo que os dados de imagem decodificados possam ser usados nos processos de predição. Os dados de imagem decodificados são armazenados em um armazenamento temporário, por exemplo, um armazenamento temporário de imagem de referência. Quando o codificador codifica os dados de vídeo recebidos com o uso de predição, os dados decodificados armazenados temporariamente são usados a partir do armazenamento temporário. 0 codificador também pode usar os dados de vídeo recebidos como uma base para predição para operação mais rápida, mas tal abordagem introduz erro de codificação devido ao fato de que o decodificador usa dados de vídeo codificados e decodificados como uma base de predição, que é diferente dos dados de vídeo recebidos usados pelo codificador.
[0030] Em alguns codecs de vídeo, como HEVC [1], as imagens de vídeo são divididas em unidades de codificação (CU) que cobrem a área da imagem. Uma CU consiste em uma ou mais unidades de predição (PU) que definem o processo de predição para as amostras dentro da CU e uma ou mais unidades de transformada (TU) que definem o processo de codificação de erro de predição para as amostras na dita CU. A CU tipicamente consiste em um bloco de amostras quadrado ou retangular com um tamanho selecionável a partir de um conjunto predefinido de tamanhos de CU possíveis. Uma CU com o tamanho máximo permitido é tipicamente nomeada LCU (maior unidade de codificação) ou CTU (unidade de árvore de codificação) e a imagem de vídeo é dividida em CTUs não
Petição 870190061960, de 03/07/2019, pág. 22/98
15/69 sobrepostas. Uma CTU pode ser adicionalmente repartida em uma combinação de CUs menores, por exemplo, ao repartir recursivamente a CTU e CUs resultantes. Cada CU resultante tipicamente tem pelo menos uma PU e pelo menos uma TU associada à mesma. Cada PU e TU pode ser adicionalmente repartida em PUs e TUs menores a fim de aumentar a granularidade dos processos de predição e de codificação de erro predição, respectivamente. Cada PU tem informações de predição associadas à mesma que definem que tipo de predição deve ser aplicada para os pixels dentro dessa PU (por exemplo, informações de vetor de movimento para PUs submetidas à predição inter e informações de direcionalidade de predição intra para PUs submetidas à predição intra). De modo semelhante, cada TU é associada a informações que descrevem o processo de decodificação de erro de predição para as amostras dentro da dita TU (incluindo, por exemplo, informações de coeficiente de DCT). É tipicamente sinalizado no nível da CU se a codificação de erro de predição é aplicada ou não para cada CU. No caso de não haver resíduo de erro de predição associado à CU, pode-se considerar que não há TUs para a dita CU. A divisão da imagem em CUs, e a divisão de CUs em PUs e TUs é tipicamente sinalizada no fluxo de bits que permite que o decodificador reproduza a estrutura pretendida dessas unidades.
[0031] A predição inter, que também pode ser denominada predição temporal, compensação de movimento ou predição compensada por movimento, reduz a redundância temporal. Em uma predição inter, as fontes de predição são imagens previamente decodificadas. A predição intra utiliza o fato
Petição 870190061960, de 03/07/2019, pág. 23/98
16/69 de que é provável que pixels adjacentes dentro da mesma imagem sejam correlacionados. A predição intra pode ser realizada em domínio de transformada ou espacial, isto é, valores de amostra ou coeficientes de transformada podem ser preditos. A predição intra é tipicamente explorada na codificação intra, em que nenhuma predição inter é aplicada.
[0032] Um resultado do procedimento de codificação é um conjunto de parâmetros de codificação, como vetores de movimento e coeficientes de transformada quantizados. Muitos parâmetros podem ser codificados por entropia de modo mais eficiente se forem preditos primeiro a partir de parâmetros espacial ou temporalmente vizinhos. Por exemplo, um vetor de movimento pode ser predito a partir de vetores de movimento espacialmente adjacentes e apenas a diferença relativa ao preditor de vetor de movimento pode ser codificada. No caso de codificação em código de uma ou mais imagens estáticas, o resultado pode ser denominado fluxo de bits de imagem e, no caso de codificação em código de vídeo, o resultado pode ser denominado fluxo de bits de vídeo.
[0033] 0 decodificador reconstrói o vídeo de saída ao aplicar um meio de predição semelhante ao codificador para formar uma representação predita dos blocos de pixel (com o uso das informações espaciais ou de movimento criadas pelo codificador e armazenadas na representação compactada) e decodificação de erro de predição (operação inversa da codificação de erro de predição que recupera o sinal de erro de predição quantizado em domínio de pixel espacial). Após aplicar o meio de predição e de decodificação de erro
Petição 870190061960, de 03/07/2019, pág. 24/98
17/69 de predição, o decodificador soma os sinais de predição e de erro de predição (valores de pixel) para formar o quadro de video de saída. 0 decodificador (e codificador) também pode aplicar meio de filtragem adicional para melhorar a qualidade do vídeo de saída antes de passá-lo para exibição e/ou armazená-lo como referência de predição para os próximos quadros na sequência de vídeo.
[0034] 0 decodificador e o método de decodificação que o mesmo realiza são ilustrados na Figura 2b. Na Fig. 2b, um fluxo de bits de entrada é decodificado por um decodificador por entropia E_1 para obter um sinal de erro de predição e as informações de modo de decodificação. 0 erro de predição é decodificado por quantização inversa Q_1 e por uma transformada inversa T_1 para obter um sinal de erro de predição reconstruído D'n. Dependendo do modo, a predição de pixel emprega predição intra ou inter P para obter uma representação predita de um bloco de imagem P'n. Uma memória de quadro de referência RFM é usada para armazenar imagens decodificadas anteriormente. A partir do sinal de erro de predição reconstruído D'n e da representação predita de um bloco de imagem P'n, uma imagem reconstruída preliminar I'n é obtida. Essa imagem reconstruída preliminar I'n pode ser usada na predição intra e para obter uma imagem reconstruída final R'n através de filtragem F. A imagem reconstruída final de saída R'n pode ser armazenada na memória de imagem de referência RFM e pode ser exibida para o usuário.
[0035] A unidade elementar para a entrada a um codificador H.264/AVC e H.265 e para a saída de um decodificador H.264/AVC e H.265, respectivamente, é uma
Petição 870190061960, de 03/07/2019, pág. 25/98
18/69 imagem. Uma imagem pode ser um quadro ou um campo. Um quadro compreende uma matriz de amostras de luma e amostras de croma correspondentes. Um campo é um conjunto de fileiras de amostra alternadas de um quadro, e pode ser usado como entrada de codificador quando o sinal de fonte é entrecruzado. Em H.264/AVC e H.265, um macrobloco é um bloco de 16x16 de amostras de luma e os blocos correspondentes de amostras de croma. Por exemplo, no padrão de amostragem de 4:2:0, um macrobloco contém um bloco de 8x8 de amostras de croma por cada componente de croma. Em H.264/AVC e H.265, uma imagem é particionada em um ou mais grupos de fatias, e um grupo de fatias contém
uma ou mais fatias. Em H.264/AVC e H.265, uma fatia
consiste em um número inteiro de blocos.
[0036] Ao contrário, ou em adição a abordagens que
utilizam predição de valor de amostra e codificação de
transformada para indicar os valores de amostra codificados, uma codificação com base em paleta de cores pode ser usada. Codificação com base em paleta se refere a uma família de abordagens para a qual uma paleta, isto é, um conjunto de cores e índices associados, é definida, e o valor para cada amostra dentro de uma unidade de codificação é expresso ao indicar seu índice na paleta. A codificação com base em paleta pode alcançar boa eficiência de codificação em unidades de codificação com um número relativamente pequeno de cores (como áreas de imagem que estão representando conteúdo de tela de computador, como texto ou gráficos simples). A fim de melhorar a eficiência de codificação da codificação de paleta, diferentes tipos de abordagens de predição de índice de paleta podem ser
Petição 870190061960, de 03/07/2019, pág. 26/98
19/69 utilizados, ou os índices de paleta podem ser submetidos à codificação de extensão de execução para serem capazes de representar áreas de imagem homogêneas maiores de modo eficiente. Além disso, no caso em que a CU contém valores de amostra que não são recorrentes dentro da CU, a codificação de escape pode ser utilizada. Amostras submetidas à codificação de escape são transmitidas sem referência a qualquer um dos índices de paleta. Ao contrário, seus valores são indicados individualmente para cada amostra submetida à codificação de escape.
[0037] Em codecs de vídeo típicos, as informações de movimento são indicadas com vetores de movimento associados a cada bloco de imagem submetido à compensação de movimento. Cada um desses vetores de movimento representa o deslocamento do bloco de imagem na imagem a ser codificada (no lado de codificador) ou decodificada (no lado de decodificador) e o bloco de fonte de predição em uma das imagens previamente codificadas ou decodificadas. A fim de representas vetores de movimento de modo eficiente, esses são tipicamente codificados diferencialmente em relação a vetores de movimento preditos específicos de bloco. Em codecs de vídeo típicos, os vetores de movimento preditos são criados de uma maneira predefinida, por exemplo, calculando-se a mediana dos vetores de movimento codificados ou decodificados dos blocos adjacentes. Outra maneira de criar predições de vetor de movimento é gerar uma lista de predições candidatas a partir de blocos adjacentes e/ou blocos colocalizados em imagens de referência temporal e sinalizar a candidata escolhida como o preditor de vetor de movimento. Além da predição dos
Petição 870190061960, de 03/07/2019, pág. 27/98
20/69 valores de vetor de movimento, o índice de referência de imagem previamente codificada/decodifiçada pode ser predito. O índice de referência é tipicamente predito a partir de blocos adjacentes e/ou blocos colocalizados na imagem de referência temporal. Ademais, codecs de vídeo de alta eficiência típicos empregam um mecanismo de codificação/decodificação de informações de movimento adicional, frequentemente denominado mesclagem/modo de mesclagem, em que todas as informações de campo de movimento, que incluem vetor de movimento e índice de imagem de referência correspondente para cada lista de imagens de referência disponível, são preditas e usadas sem qualquer modificação/correção. De modo semelhante, a predição das informações de campo de movimento é realizada com o uso das informações de campo de movimento de blocos adjacentes e/ou blocos colocalizados em imagens de referência temporal, e as informações de campo de movimento usadas são sinalizadas dentre uma lista de lista de candidatos de campo de movimento preenchida com informações de campo de movimento de blocos adjacentes/colocalizados disponíveis.
[0038] Tipicamente, os codecs de vídeo suportam a predição compensada por movimento a partir de uma imagem de fonte (unipredição) e duas fontes (bipredição) . No caso da unipredição, um único vetor de movimento é aplicado, ao passo que, no caso da bipredição, dois vetores de movimento são sinalizados, e as predições compensadas por movimento a partir de duas fontes são promediadas para criar a predição de amostra final. No caso de predição ponderada, os pesos relativos das duas predições podem ser ajustados, ou um
Petição 870190061960, de 03/07/2019, pág. 28/98
21/69 desvio sinalizado pode ser adicionado ao sinal de predição. [0039] Além de aplicar a compensação de movimento à predição de interimagem, uma abordagem semelhante pode ser aplicada à predição intraimagem. Nesse caso, o vetor de deslocamento indica de onde, a partir da mesma imagem, um bloco de amostras pode ser copiado para formar uma predição do bloco a ser codificado ou decodificado. Esse tipo de métodos de cópia intrabloco pode melhorar a eficiência de codificação substancialmente na presença de estruturas que se repetem dentro do quadro - como texto ou outros gráficos.
[0040] Em codecs de vídeo típicos, o resíduo de predição após a compensação de movimento ou predição intra é primeiramente transformado com um kernel de transformada (como DCT) e, então, codificado. A razão para isso é que frequentemente ainda existe alguma correlação dentre os resíduos, e a transformada pode, em muitos casos, ajudar a reduzir essa correlação e fornecer codificação mais eficiente.
[0041] Codificadores de vídeo típicos utilizam funções de custo lagrangianas para encontrar modos de codificação ideais, por exemplo, o modo de Macrobloco desejado e vetores de movimento associados. Esse tipo de função de custo usa um fator de ponderação λ para unir a distorção de imagem (exata ou estimada) devido a métodos de codificação
com perdas e a quantidade (exata ou estimada) de
informações que é re querida para representar os valores de
pixel em uma área de imagem:
C = D + ÀR, (Eq. 1)
em que C é o custo lagrangiano a ser minimizado, D é a
Petição 870190061960, de 03/07/2019, pág. 29/98
22/69 distorção de imagem (por exemplo, Erro Quadrático Médio) com o modo e vetores de movimento considerados, e R é o número de bits necessários para representar os dados requeridos para reconstruir o bloco de imagem no decodificador (incluindo a quantidade de dados para representar os vetores de movimento candidatos).
[0042] Codificação de vídeo escalável se refere à estrutura de codificação em que um fluxo de bits pode conter múltiplas representações do conteúdo em diferentes taxas de bits, resoluções ou taxas de quadro. Nesses casos, o receptor pode extrair a representação desejada dependendo de suas características (por exemplo, resolução que combina melhor com o dispositivo de exibição). Alternativamente, um servidor ou um elemento de rede pode extrair as porções do fluxo de bits a ser transmitido ao receptor dependendo, por exemplo, das características de rede ou capacidades de processamento do receptor. Um fluxo de bits escalável tipicamente consiste em uma camada de base que fornece o vídeo de qualidade mais baixa disponível e uma ou mais camadas de aprimoramento que aprimoram a qualidade de vídeo quando recebidas e decodificadas junto com as camadas inferiores. A fim de melhorar a eficiência de codificação para as camadas de aprimoramento, a representação codificada dessa camada tipicamente depende das camadas inferiores. Por exemplo, as informações de modo e movimento da camada de aprimoramento podem ser preditas a partir de camadas inferiores. De modo semelhante, os dados de pixel das camadas inferiores podem ser usados para criar predição para a camada de aprimoramento.
[0043] Um codec de vídeo escalável para escalabilidade
Petição 870190061960, de 03/07/2019, pág. 30/98
23/69 de qualidade (também conhecido como Sinal para Ruído ou SNR) e/ou escalabilidade espacial pode ser implementado como a seguir. Para uma camada de base, um codificador e decodificador de vídeo não escalável convencional é usado. As imagens reconstruídas/decodifiçadas da camada de base são incluídas no armazenamento temporário de imagem de referência para uma camada de aprimoramento. Em H.264/AVC, HEVC e codecs semelhantes que usam lista(s) de imagem de referência para uma predição inter, as imagens decodificadas de camada de base podem ser inseridas em uma lista(s) de imagem de referência para codificação/decodificação de uma imagem de camada de aprimoramento de modo semelhante às imagens de referência decodificadas da camada de aprimoramento.
[0044] Consequentemente, o codificador pode escolher uma imagem de referência de camada de base como uma referência de predição inter e indicar seu uso tipicamente com um índice de imagem de referência no fluxo de bits codificado. 0 decodificador decodifica a partir do fluxo de bits, por exemplo, a partir de um índice de imagem de referência, que uma imagem de camada de base é usada como referência de predição inter para a camada de aprimoramento. Quando uma imagem de camada de base decodificada é usada como referência de predição para uma camada de aprimoramento, a mesma é denominada imagem de referência intercamada.
[0045] Al ém da escalabilidade de qualidade, existem os seguintes modos de escalabilidade:
• Escalabilidade espacial: Imagens de camada de base são codificadas em uma resolução inferior às imagens de camada de aprimoramento.
Petição 870190061960, de 03/07/2019, pág. 31/98
24/69 • Escalabilidade de profundidade de bit: Imagens de camada de base são codificadas em profundidade de bit inferior (por exemplo, 8 bits) às imagens de camada de aprimoramento (por exemplo, 10 ou 12 bits).
• Escalabilidade de formato de croma: Imagens de camada de aprimoramento fornecem fidelidade superior em croma (por exemplo, codificadas em formato de croma de 4:4:4) em relação às imagens de camada de base (por exemplo, formato de 4:2:0).
[0046] Em todos os casos de escalabilidade acima, informações de camada de base podem ser usadas para codificar a camada de aprimoramento para minimizar a sobrecarga de taxa de bits adicional.
[0047] A escalabilidade pode ser habilitada de duas maneiras básicas. Ao introduzir novos modos de codificação para realizar a predição de valores de pixel ou sintaxe a partir de camadas inferiores da representação escalável, ou ao dispor as imagens de camada inferior no armazenamento temporário de imagem de referência (armazenamento temporário de imagem decodificada, DPB) da camada superior. A primeira abordagem é mais flexível e, assim, pode fornecer melhor eficiência de codificação na maioria dos casos. No entanto, a segunda abordagem, escalabilidade com base em quadro de referência, pode ser implementada de modo muito eficiente com mudanças mínimas nos codecs de camada única, enquanto ainda alcança a maior parte dos ganhos de eficiência de codificação disponíveis. Essencialmente, um codec de escalabilidade com base em quadro de referência pode ser implementado com o uso da mesma implementação de hardware ou software para todas as camadas, apenas cuidando
Petição 870190061960, de 03/07/2019, pág. 32/98
25/69 do gerenciamento de DPB por meios externos.
[0048] A f im de ser capaz de utilizar processamento paralelo, as imagens podem ser repartidas em segmentos de imagem independentemente codificáveis e decodificáveis (fatias ou azulejos). Fatias tipicamente se referem a segmentos de imagem construídas de um determinado número de unidades de codificação básicas que são processadas em ordem de codificação ou decodificação padrão, enquanto azulejos tipicamente se referem a segmentos de imagem que foram definidos como regiões de imagem retangulares que são processadas, pelo menos até certo ponto, como quadros individuais.
[0049] Na predição intra direcional tradicional, o conjunto de direções disponíveis está limitado à faixa de 45 a +45 graus acima do bloco e -45 a +45 graus à esquerda do bloco. Essa faixa de 180 graus que se estende da diagonal superior direita para a diagonal esquerda inferior serve bem para blocos de predição intra quadrados tradicionais. Por exemplo, os padrões de codificação de vídeo H.264/AVC e H.265/HEVC usam predição intra espacial tradicional com blocos de predição quadrados e direções de predição intra que variam de - 45 a +45 graus acima do bloco e -45 a +45 graus à esquerda do bloco.
[0050] A Fig. 3a ilustra o conjunto de direções de predição intra usadas no padrão de codificação de vídeo H.265/FIEVC. Os valores numéricos para predição horizontal a partir da fronteira esquerda e predição vertical a partir da fronteira superior variam de -32 a +32 e definem a diferença de projeção por distância de amostra com precisão de amostra de 1/32. Em outras palavras, o pixel ou pixels
Petição 870190061960, de 03/07/2019, pág. 33/98
26/69 de referência a serem usados para a predição infra direcional podem ser determinados a partir da distância horizontal ou vertical da fronteira que é usada para predição e a direção de predição intra que é usada. Por exemplo, um valor de +32 corresponde a um desvio de localização de referência de +32/32 para cada unidade de amostra entre a amostra predita e a amostra de referência (ou seja, usando um ângulo de predição de +45 graus) . Como outro exemplo, um valor de -17 na predição horizontal significa gue um pixel que está a 4 pixels de distância da fronteira (vertical) tem uma localização de referência de 68/32 em relação ao pixel a ser predito. Isso significa que a localização de pixel de referência está entre o 2o e 3o pixel acima do nível em que o pixel a ser predito se encontra, e o valor do pixel predito pode ser obtido como uma média ponderada do 2o e 3o valores de pixel como (28*a2 + 4*a3)/32. Geralmente, a direção de predição intra é usada para determinar um pixel ou pixels de referência para a predição. Um pixel ou pixels de referência são, então, usados para determinar o valor de pixel predito, por exemplo, por uma média ponderada dos valores de pixel de referência. Os pixels imediatamente vizinhos à fronteira de bloco (ou a extensão da fronteira de bloco) podem ser usados como pixels de referência. Ao contrário ou adicionalmente, os pixels mais distantes da fronteira de bloco podem ser usados.
[0051] A Fig. 3b ilustra uma abordagem em que cada amostra dentro de um bloco de predição utiliza a mesma direção de predição no processo de predição. Na Fig. 3b, os pixels redondos representam um bloco de amostras de
Petição 870190061960, de 03/07/2019, pág. 34/98
27/69 predição, e os quadrados pretos representam uma linha de amostras de referência. Além disso, a Fig. 3b mostra projeções de predição para a primeira e segunda fileiras de amostras com uma direção de predição fixa. Conforme explicado acima, o desvio a partir da amostra de referência diretamente no topo é calculado de modo que, para a primeira linha das amostras de predição, o desvio seja d, para a segunda linha, o desvio seja 2d, e assim por diante. [0052] A Fig. 3c ilustra a aplicação de uma direção de predição intra que muda dependendo da distância da fileira de amostra a ser predita até a fileira de referência. Na Fig. 3c, as projeções de predição são avaliadas com base na distância vertical das amostras de referência. Os desvios para a primeira, segunda, terceira e quarta fileiras são d1, di+d2, di+d2+d3 e di+d2+ds+d4, em que os aumentos de desvio di, d2, da e d4 são de tamanhos diferentes, por exemplo, tamanho crescente ou decrescente. Em outras palavras, a direção de predição dentro do bloco a ser predito pode mudar. Por exemplo, a direção de predição da primeira fileira a ser predita pode ser dada, e as direções de predição de outras fileiras podem ser calculadas a partir dessa primeira direção de predição.
[0053] A Fig. 3d ilustra a mesma abordagem aplicada em nível de bloco. Cada bloco de predição de 4x4 de valores de pixel preditos tem uma direção de predição distinta que foi calculada com base na localização do bloco. Os blocos na primeira fileira de blocos podem usar amostras de referência acima dos blocos, enquanto os blocos abaixo da primeira fileira de blocos podem usar amostras dentro dos blocos imediatamente acima dos mesmos como referências para
Petição 870190061960, de 03/07/2019, pág. 35/98
28/69 predição. Cada um dos blocos terá sua direção de predição individual que foi determinada com base em cada posição dos blocos, um em relação ao outro (ou em relação a uma origem definida). A direção de predição pode, assim, mudar de bloco para bloco, e os desvios para as primeiras fileiras de pixels a ser preditos são, aqui, di, d2, da e d4.
[0054] Conforme explicado anteriormente, uma média ponderada pode ser usada para obter os valores de pixel preditos a partir dos valores de pixel de referência. Além de uma fileira de pixels de referência, mais de uma fileira de pixels de referência pode ser usada. 0 objetivo do processo de predição pode ser entendido como sendo fornecer um bloco predito suave e consistente, de modo que o sinal de erro de predição restante possa ser codificado de modo eficiente. 0 codificador pode, de fato, tentar codificar o bloco com diferentes direções de predição e selecionar a direção de predição que fornece a melhor eficiência de codificação.
[0055] As direções de predição direcional disponíveis, também denominadas modos de predição direcional, podem ser entendidas para formar um conjunto de modos de predição direcional. Por exemplo, o conjunto de direções de predição intra direcional ou modos de predição intra direcional usados no padrão de codificação de vídeo H.265/HEVC são 32, -26, -21, -17, -13, -9, -5, -2, 0, +2, +5, +9, +13, +17, +21, +26 e +32 para a predição horizontal e -32, -26, -21, -17, -13, - 9, -5, -2, 0, +2, +5, +9, +13, +17, +21, +26 e +32 para a predição vertical. A direção -32 coincide com as direções de predição horizontal e vertical. A direção +32 na predição horizontal é exatamente oposta à
Petição 870190061960, de 03/07/2019, pág. 36/98
29/69 direção de predição vertical +32 na Fig. 3a. Outros conjuntos de direções de predição também podem ser usados. Por exemplo, o modelo de Teste de Exploração Conjunta 4 (JEM4) suporta blocos de predição retangulares (quadrados e não quadrados) com direções de predição intra com a mesma faixa de ângulos de H.265/FIEVC, mas introduz mais direções de predição em entre as direções de H.265/FIEVC.
[0056] Conforme mostrado na Fig. 3a, a direção superior esquerda para a predição pode ser entendida como sendo a direção de 45 graus a partir do centro de um bloco quadrado a ser predito para a aresta superior esquerda do bloco. Uma direção superior esquerda pode ser mais entendida de modo mais geral como sendo a direção de 45 graus no sentido superior esquerdo entre a direção horizontal (esquerda) e vertical (para cima). Essa direção superior esquerda pode ser usada como uma referência e, por exemplo, todas as direções de predição na Fig. 3a a partir de um ângulo zero, ângulo agudo (menos de 90 graus) ou ângulo reto (90 graus) com essa direção superior esquerda. Na Fig. 3a, um ângulo α mostra uma direção de predição horizontal (predição a partir das amostras de referência para a esquerda do bloco) e um ângulo β mostra a direção de predição vertical (predição a partir das amostras de referência acima do bloco). As linhas tracejadas na Fig. 3a indicam as fronteiras horizontal e vertical ou extensão da fronteira, bem como a linha de ângulo reto (90 graus) em relação à direção superior esquerda. Os números no diagrama pequeno correspondem aos números do diagrama grande para as direções de predição. Diagramas de acordo com a notação do diagrama menor também são usados nas últimas figuras.
Petição 870190061960, de 03/07/2019, pág. 37/98
30/69 [0057] No entanto, no caso de blocos não quadrados, especialmente se a razão entre as dimensões horizontal e vertical de um bloco de predição for grande, foi constatado, no presente documento, que essa seleção de direções de predição na Fig. 3a pode ser subideal. No caso de blocos de predição não quadrados, alguns dos modos de predição intra tradicionais, por exemplo, da Fig. 3a, com direcionalidade entre 0 e +45 graus (entre a predição de 45 graus e vertical direta a partir da predição de 45 graus e horizontal direta ou superior direita a partir da direção inferior esquerda) podem ter um grande número de amostras de referência ativas não diretamente conectadas com qualquer uma das bordas do bloco. Observou-se que, nesses casos, um bloco de amostra de predição com estrutura direcional semelhante, mas correlação superior entre amostras predita e original, pode ser gerado por inversão ou rotação da direção de predição em 180 graus e usando as amostras de referência em outra borda do bloco (borda superior em vez de borda esquerda ou borda esquerda em vez de borda superior) . Efetivamente, isso leva ao uso de um conjunto de direção de predição que se estende além do tradicional -45 a +45 para a faixa de ângulo em relação à predição horizontal e vertical, ou seja, além de -90 a 90 graus a partir da direção superior esquerda. A fim de aprimorar mais a eficiência de codificação fornecida pelas novas direções de predição intra, também é descrito no presente documento como essas direções de predição intra de ângulo amplo podem ser sinalizadas no fluxo de bits ou combinadas para criar blocos submetidos à bipredição intra.
[0058] No presente documento, é fornecido um codificador
Petição 870190061960, de 03/07/2019, pág. 38/98
31/69 de imagem/video com um conjunto de direções de predição intra que se estende além dos ângulos de 45 graus tradicionais a partir da direção horizontal ou vertical, em outras palavras, para ângulos obtusos a partir da direção superior esquerda (predição de ângulo amplo). Os modos (direções) de predição disponíveis podem ser selecionados com base no formato da unidade de predição, por exemplo, em que os ângulos íngremes a partir da direção mais estreita da unidade de predição são invertidos para usar a direção de predição de ângulo amplo. As informações de modo que indicam primeiramente a direcionalidade geral do bloco podem ser codificadas no fluxo de bits (isso pode ser usado para a predição de direcionalidade das unidades de predição subsequentes). A direcionalidade de predição geral pode ser seguida por uma verificação quanto a duas direções opostas dessa direcionalidade estarem ambas disponíveis como modos de predição, e uma indicação de qual das duas direções opostas usar se a verificação indicar que ambas estão disponíveis. As direções primária e de ângulo amplo podem ter diferentes probabilidades com base no formato ou dimensões do bloco.
[0059] A seguir, é descrita a predição de ângulo amplo, ou seja, a predição com o uso de amostras de referência em ângulo obtuso em relação à direção superior esquerda a partir de um pixel a ser predito. A Fig. 4a ilustra uma imagem com bloco a ser predito P, a área já reconstruída R
que pode ser usada como referência para o processo de
predição e a área indisponível U que ainda não foi
processada.
[0060] A Fig. 4b mostra amostras de referência na
Petição 870190061960, de 03/07/2019, pág. 39/98
32/69 fronteira esquerda e superior do bloco. As amostras de referência já decodificadas são ilustradas com círculos sólidos. As amostras de referência indisponíveis são ilustradas com círculos vazios. Tais amostras de referência indisponíveis ainda não foram decodificadas/processadas, ou podem estar além da borda da imagem. Tais amostras de referência indisponíveis podem ser obtidas por preenchimento com a amostra de referência disponível mais próxima na mesma fronteira, ou seja, copiando o valor de uma amostra de referência disponível como a amostra de referência disponível mais próxima. 0 número de amostras de referência necessárias na direção horizontal e vertical é w+h+1 se a direções de predição estiverem dentro do ângulo reto a partir da direção superior esquerda. Isso se deve ao fato de que, na predição vertical, o maior desvio a partir do diretamente no topo é igual à altura h do bloco (com direção de predição superior direita de 45 graus), e a largura do bloco é w, e a predição horizontal segue a mesma lógica. 0 pixel de aresta superior esquerda é sempre necessário.
[0061] A Fig. 4c ilustra um bloco não quadrado de predição, e mostra a predição de +45 graus horizontal para a amostra à extrema direita do bloco (seta longa) e a predição de +45 graus vertical para a amostra à extrema direita do bloco (seta curta). Como se pode ver, há apenas um pixel de referência indisponível (o mais inferior).
[0062] A Fig. 4d mostra um bloco não quadrado de predição, e a predição horizontal com angularidade entre 0 e +45 graus (seta longa), ou seja, que tem um ângulo agudo com a direção superior esquerda, e seu modo inverso (modo
Petição 870190061960, de 03/07/2019, pág. 40/98
33/69 de ângulo amplo) com angularidade vertical maior do que +45 graus (seta curta), ou seja, que tem um ângulo obtuso com a direção superior esquerda. Como pode ser visto, uma amostra de referência 410 adicional (ou mais de uma amostra de referência adicional, marcada com preenchimento preto padronizado) é usada na fileira superior para habilitar a predição a partir da direção de ângulo amplo (seta curta) . Em tal predição intra direcional de ângulo amplo, isto é, de ângulo obtuso, para um bloco não quadrado retangular, pode haver uma vantagem de um pixel de referência usado
para a predição de ângulo amplo (o pixel 410 à extrema
direita na Fig. 4d) estar mais próximo da maior parte dos
pixels do bloco a ser predito e, assim, pode fornecer
melhor correlação com os pixels a serem preditos do que a amostra de referência primária na direção de ângulo agudo (o terceiro pixel de referência 420 a partir do fundo na Fig. 4d) .
[0063] Ao usar ângulos tradicionais (direções de -32 a + 32 na Fig. 3a) , por exemplo, na maior parte das amostras de referência superior e superior direita w+h podem ser usadas, mais a uma amostra de aresta superior esquerda. No caso de modos de ângulo amplo, mais do que isso é necessário. Amostras além das amostras w+h superiores podem ser verificadas quanto à disponibilidade e usadas como amostras de referência. Alternativamente, tais amostras de referência distantes podem ser consideradas como indisponíveis e os calores preenchidos (copiados) pode ser usados para as mesmas, com o uso da amostra de referência mais próxima que foi marcada como disponível.
[0064] A Fig. 5a ilustra um conjunto de modos (direções)
Petição 870190061960, de 03/07/2019, pág. 41/98
34/69 de predição intra direcional. Os modos originais 510, 512, 515, 517 que têm modos de ângulo amplo associados 520, 522, 525, 527 (respectivamente) são marcados com pontos redondos e os modos de ângulo amplo correspondentes com pontos quadrados. Tais modo primário e modo de ângulo amplo podem ser entendidos para formar os assim chamados pares de predição de ângulo amplo intra direcional, sendo que aqui os pares são (510, 520), (512, 522), (515, 525) e (517, 527) . Os pares podem ter uma direcionalidade geral associada, por exemplo, indicada pelo modo de ângulo agudo, como +21 para o par (510, 520) . Além disso, os modos horizontal e vertical de +45 graus (com deslocamento de amostra de +32 listado na Fig. 5a) podem ser representados como um modo primário - par de modo de ângulo amplo que especifica a direcionalidade geral (de +32) e adicionalmente quais das direções habilitar, em vez da representação tradicional de dois modos individuais.
[0065] As Figs. 5b, 5c, 5d e 5e ilustram alguns exemplos de modos de ângulo amplo associados. Na Fig. 5b, um modo de ângulo amplo invertido diretamente oposto 540 para um modo (de ângulo agudo) primário 530 é mostrado à esquerda. O ângulo do modo de ângulo amplo 540 em relação à direção superior esquerda pode ser obtido a partir do modo primário 530 ao subtrair o ângulo de modo primário de 180 graus. Ou seja, se o ângulo de modo primário é a, em que o ângulo α é agudo, o ângulo do modo de ângulo amplo em relação à direção superior esquerda é 180°-a. Conforme mostrado na Fig. 5b à direita, o modo de ângulo amplo 542 pode não ser diretamente oposto ao modo (agudo) de ângulo estreito primário correspondente 532, mas pode, ao contrário, ser
Petição 870190061960, de 03/07/2019, pág. 42/98
35/69 aproximadamente oposto, ou oposto, mas não diretamente oposto. Em outras palavras, um modo de ângulo amplo pode ser tal que tenha uma direção que forme um ângulo obtuso com a direção superior esquerda (direção enfatizada na Fig. 5b) , e estar no lado oposto do modo primário em relação à direção superior esquerda.
[0066] Como a Fig. 5c ilustra (imagem esquerda), a correspondência entre um modo (ângulo estreito) primário e um modo de ângulo amplo pode ser diferente da formação de um par. Por exemplo, pode haver dois modos primários (modos de ângulo estreito) 550, 552 que têm o mesmo modo de ângulo amplo 560 associado. Isso pode aprimorar a eficiência de codificação ao reduzir o número de modos diferentes. Além disso, isso pode permitir selecionar pixels de referência mais próximos do bloco predito. Da mesma maneira, pode haver mais de um modo de ângulo amplo 565, 567 associado a um modo de ângulo estreito primário 555. Isso pode aumentar a eficiência de codificação visto que há menos modos primários que têm um modo de ângulo amplo associado.
[0067] A Fig. 5d ilustra o conceito de conjunto de modo de ângulo amplo de predição direcional. 0 conjunto de modo de ângulo amplo foi marcado com quadrados, e compreende um conjunto de modos de ângulo amplo 580, 582, 584. Esses modos de ângulo amplo podem ser associados a modos primários 570, 572, 574, marcados com círculos. Tal conjunto de modo de ângulo amplo pode ser comunicado no fluxo de bits. Pode haver um número de conjuntos de modo de ângulo amplo definido e comunicado no fluxo de bits. O conjunto de modo de ângulo amplo a ser usado para codificar e decodificar pode ser comunicado com um indicador de
Petição 870190061960, de 03/07/2019, pág. 43/98
36/69 conjunto de modo de ângulo amplo no fluxo de bits. Tal indicador pode ser disposto, por exemplo, no cabeçalho da imagem ou no cabeçalho da fatia, ou um conjunto de parâmetros referido a partir de uma imagem ou uma fatia.
[0068] A Fig. 5e ilustra que um ou mais conjuntos de modo de ângulo amplo pode ser usado. Por exemplo, os modos 590, 591 e 592 podem estar em um conjunto de modo de ângulo amplo, e os modos 595, 596, 597 pode estar em outro. Na codificação e decodificação, tais conjuntos de modos também podem ser usados de forma que o conjunto de modos a ser usado seja comunicado diretamente no fluxo de bits, e o modo a partir do conjunto de modos é comunicado no fluxo de bits.
[0069] Um decodificador ou codificador de vídeo ou imagem que opera de acordo com a invenção pode incluir direções de predição intra espacial com angularidade além do limite tradicional de +45 graus para o conjunto de modos de predição. Enquanto isso pode beneficiar até certo ponto os blocos de predição quadrados tradicionais, constatou-se ser especialmente útil para blocos de predição retangulares não quadrados. Isso se deve à constatação de que algumas das direções de predição tradicionais, quando aplicadas à direção do lado mais estreito do bloco, tendem a ter a maior parte das amostras de referência desconectadas da borda do bloco de predição. No entanto, uma estrutura textural com direcionalidade semelhante pode ser gerada por uma direção inversa aproximada (ao inverter ou girar a direção de predição exatamente ou aproximadamente em 180 graus). Realizando-se essa operação, a maior parte das amostras de referência se tornam vizinhas mais próximas
Petição 870190061960, de 03/07/2019, pág. 44/98
37/69 para um bloco de predição e fornecem predição estatisticamente melhor e, como resultado, ganhos de eficiência de codificação são observados.
[0070] Os modos de predição de ângulo amplo com direcionalidade acima de +45 graus em relação a predições diretas diretamente horizontais ou diretamente verticais podem ser codificados por meio de codificação de modo intra tradicional. Ou seja, esses podem ser adicionados à lista de modos de predição disponíveis, um número de modo individual pode ser atribuído a cada um desses modos e, quando o modo de predição intra decodificado se referir a um modo de ângulo amplo, o processo de predição intra realiza predição de amostra a partir da direção indicada. No caso de blocos de predição não quadrados, esse processo pode ser vantajosamente modificado, e o formato do bloco pode ser considerado como parte do processo de decodificação. Uma possibilidade para fazer isso é incluir modos de ângulo amplo com direcionalidade acima de +45 graus apenas para a direção principal para a qual o bloco tem sua dimensão maior. Por exemplo, se a largura do bloco de predição for 16 amostras e a altura do bloco de predição for 4 amostras, o conjunto de modos de predição intra direcional pode ser definido como incluindo modos horizontais de ângulo estreito com angularidades de -45 a +45 graus, modos verticais de ângulo estreito com angularidades de -45 a +45 graus e um ou mais modos verticais de ângulo amplo com angularidades maiores do que + 45 graus (por exemplo, como na Fig. 5e) . 0 número e direcionalidade dos modos de ângulo amplo também podem depender do formato do bloco. Por exemplo, se a razão da
Petição 870190061960, de 03/07/2019, pág. 45/98
38/69 largura e altura é 2:1, um determinado número de direções de ângulo amplo pode ser incluído na lista de modos disponíveis e, se a razão for de 4:1, outro número de direções de ângulo amplo pode ser incluído na lista. De modo semelhante, o formato do bloco de predição pode definir quantos dos modos de ângulo estreito com direcionalidade entre -45 e +45 graus são incluídos na lista de modos de predição intra disponíveis para o bloco, por exemplo, de modo que quanto mais alongado o bloco for, mais modos de ângulo amplo serão incluídos. Observou-se, no presente documento, que selecionar a direção (obtusa) de ângulo amplo pode fornecer uma predição que seja mais confiável do que fornecida pela direção de predição de ângulo agudo no caso de um bloco não quadrado a ser predito.
[0071] Uma possibilidade de indicar os modos de ângulo amplo é permitir que o conjunto tradicional de direções de predição intra de ângulo estreito com angularidades que variam de -45 graus a +45 graus para todos os tamanhos de bloco e, dependendo do formato do bloco, decida qual dos modos de ângulo estreito tem um modo de ângulo amplo inverso adicional associado aos mesmos (como na Fig. 5d) . Dessa maneira, um decodificador pode primeiramente decodificar um modo de predição de ângulo estreito que define a direcionalidade geral do bloco, e se esse modo indica um modo com modo de ângulo amplo associado que também possa decodificar um identificador adicional de use modo de ângulo amplo em vez de modo primário que define se o modo deve ser interpretado como um modo tradicional de ângulo estreito ou um modo inverso de ângulo amplo. Esse
Petição 870190061960, de 03/07/2019, pág. 46/98
39/69 tipo de abordagem é conveniente, visto que o modo de ângulo estreito pode ser usado para a predição de modos dos modos de predição consequentes, visto que define a direcionalidade da textura que o processo de predição de amostra gera para o bloco. No caso de simplesmente adicionar as direções de ângulo amplo com angularidade que excedem +45 graus à lista de modos de predição como modos independentes, a lista resultante de modos teria modos pareados gue geram a mesma direcionalidade, mas com amostras de referência diferentes. Isso pode fazer com que a predição de direcionalidade dos blocos funcione de modo menos confiável.
[0072] Como implementação alternativa, o número de modos de predição intra disponível para o bloco de predição pode ser mantido constante, mas o decodificador pode interpretar o número de modo indicado de maneira diferente dependendo do formato do bloco de predição. Por exemplo, algumas das direções associadas a modos de predição podem ser invertidas para exatamente ou aproximadamente 180 graus, dependendo do formato do bloco (consultar Fig. 5b) . Por exemplo, em referência à Fig. 5a, predições de ângulo estreito horizontais com parâmetros de deslocamento +21 e +26 associados podem ser reinterpretados como modos de ângulo amplo verticais com parâmetros de deslocamento de + 48 e +39, respectivamente, se a largura do bloco de predição for maior do que a altura do bloco de predição (visto que podería ser esperado que predições verticais operassem melhor, devido ao bloco de predição ter distância relativa menor até suas amostras de referência superiores em comparação com suas amostras de referência da esquerda).
Petição 870190061960, de 03/07/2019, pág. 47/98
40/69
De modo semelhante, as predições de ângulo estreito verticais com parâmetros de deslocamento +21 e +26 associados podem ser reinterpretadas como modos de ângulo amplo horizontais com parâmetros de deslocamento de +48 e +39, respectivamente, se a largura do bloco de predição for menor do gue a altura do bloco de predição. A seleção dessas direções de predição é fornecida como exemplo e, na prática, pode-se selecionar um número de modos diferente com ângulo estreito diferente e parâmetros de deslocamento de ângulo amplo invertidos como candidatos de ângulo amplo. [0073] Como implementação alternativa, o número de modos de predição intra disponível para o bloco de predição pode ser mantido constante, mas a codificação e decodificação por entropia dos modos pode ser alterada com base no formato ou dimensões do bloco de predição. Por exemplo, um contexto diferente pode ser usado pelo decodificador aritmético para decodificar as direções de predição de diferentes direcionalidade principais. O decodificador pode primeiramente ler, a partir do fluxo de bits, uma indicação quanto à direção principal horizontal ou vertical ser usada e comutar para modos de contexto diferentes com base no formato e na direção de predição principal do bloco. Alternativamente, no caso de abordagens que usam uma predição de modo mais provável, que é ter um elemento de sintaxe que define se o modo de predição selecionado está entre os modos priorizados, a construção da lista de modo de prioridade pode ser feita com base no formato do bloco. Por exemplo, um modo de candidato vertical pode ser incluído no conjunto antes ou em vez de um candidato horizontal se a largura do bloco de predição for maior do
Petição 870190061960, de 03/07/2019, pág. 48/98
41/69 que sua altura, e um modo horizontal pode ser incluído na lista antes ou em vez de um candidate vertical se a largura do bloco for menor do que sua altura.
[0074] Em outras palavras, as informações no formato de bloco podem influenciar quantos modos de predição de ângulo amplo direcional são usados, quais modos de predição de ângulo amplo direcional são usados, quais conjuntos de modos de predição de ângulo amplo direcional são usados, quais são as probabilidades dos diferentes modos e assim por diante. Tal modo de usar as informações no formato de bloco pode aumentar a eficiência de codificação, visto que nem todas as informações precisam ser explicitamente codificadas, ou palavras-código menores podem ser atribuídas para os valores de parâmetro mais prováveis.
[0075] A abordagem para selecionar os modos mais prováveis com base no formato de bloco também pode ser usada com a predição direcional intraimagem de ângulo estreito tradicional.
[0076] 0 parâmetro de deslocamento de ângulo amplo invertido pode ser calculado a partir do parâmetro de deslocamento de um modo de ângulo estreito original com o uso do inverso do modo original em precisão definida (consultar painel esquerdo da Fig. 5b) . Por exemplo, no caso de parâmetros de deslocamento precisos de amostra de 1/32, um parâmetro de deslocamento de ângulo amplo dW pode ser calculado a partir do parâmetro de deslocamento de ângulo estreito original dN com aritmética de número inteiro como:
inverseAngle(dN) = ( 256 * 32 ) / dN dW = 32 * inverseAngle(dN) >> 8
Petição 870190061960, de 03/07/2019, pág. 49/98
42/69 [0077] em que >> denota uma operação de mudança de bit (isso pode corresponder ao resultado da computação 1024 / dN, apropriadamente truncada ou arredondada, dependendo da arquitetura computacional). Definir o parâmetro de deslocamento de ângulo amplo invertido desse modo tem a vantagem de evitar operações de divisão com parâmetros potencialmente não potentes de dois no cálculo final de dW. Dessa maneira, valores intermediários de inverseAngle(dN) podem ser pré-calculados e armazenados em um armazenamento temporário de memória a ser usado quando dW precisar ser avaliado pelo codificador ou pelo decodificador. dW também pode ser definido de diferentes maneiras. Por exemplo, o mesmo não precisa ter dependência linear ou inversa de dN, mas pode ser constatado heuristicamente e ser definido para valores iguais no codificador e decodificador correspondente dependendo do valor de dN.
[0078] Uma implementação alternativa pode ter múltiplos modos de ângulo amplo associados a um único modo de ângulo estreito ou mais de um modo de ângulo estreito associado a um único modo de ângulo amplo (consultar Fig. 5c) . 0 codificador e decodificador também pode gerar predições ao combinar predições de amostra do modo de ângulo estreito e o modo inverso de ângulo amplo a fim de criar amostras bipreditas. Isso pode ser feito, por exemplo, ao ponderar as amostras preditas com base em sua distância das amostras de referência ou por outras abordagens. Além disso, para o caso de bipredição ou, de forma mais geral, no caso de unipredição, pode haver indicação de desvio para o modo de ângulo amplo a fim de ajustar o mesmo para corresponder melhor às estruturas de textura desejada do bloco.
Petição 870190061960, de 03/07/2019, pág. 50/98
43/69 [0079] A predição de ângulo estreito de -45 a +45 graus tradicional requer amostras de referência que tenham o máximo de largura de bloco mais a altura de bloco distante da aresta superior esquerda do bloco de predição (conforme ilustrado nas Figs. 2b e 2c) . No caso de a predição de ângulo amplo exceder +45 graus, algumas amostras de referência mais distantes podem ser necessárias. Uma possibilidade é usar o preenchimento (copiar o valor das amostras de referência disponíveis mais próximas) para gerar amostras de referência com distância mais longa do que a largura de bloco + altura a partir da coordenada superior esquerda do bloco. Outra possibilidade seria usar amostras já processadas com condições de disponibilidade semelhantes àquelas usadas para a faixa de amostras de referência de ângulo estreito.
[0080] A fim de melhorar mais a qualidade dos blocos preditos, a filtragem e outras operações de ajuste podem ser realizadas antes (por exemplo, para as amostras de referência) ou após a predição de amostra utilizando modos intra de ângulo amplo (por exemplo, filtragem dos lados ou partes internas do bloco de predição).
[0081] Um decodificador de vídeo ou imagem pode ser configurado para selecionar entre modos de ângulo estreito de predição intra direcional que têm angularidade entre -45 graus e +45 graus em relação a uma direção de predição principal e modos de ângulo amplo que têm angularidade maior do que +45 graus em relação uma direção de predição principal, sendo que a direção de predição principal é uma direção diretamente horizontal ou diretamente vertical.
[0082] A disponibilidade de um ou mais dentre modos de
Petição 870190061960, de 03/07/2019, pág. 51/98
44/69 predição de ângulo amplo com angularidade maior ou igual a +45 graus depende do formato do bloco de predição.
[0083] Um decodificador de video ou imagem pode decodificar um identificador de modo de predição, verificar se o modo decodificado tem um modo inverso (modo de ângulo amplo) disponível e, com base nessa verificação, decodifica um segundo identificador que determina se a direção de predição original ou sua direção inversa deve ser usada.
[0084] A direção de predição (primária) original pode usar amostras primeiramente a partir da primeira borda do bloco com um primeiro parâmetro de deslocamento de amostra de predição e a direção de predição de ângulo amplo pode usar amostras a partir da segunda borda do bloco com um segundo parâmetro de deslocamento de amostra de predição (consultar Fig. 3b), sendo que a primeira borda do bloco é diferente da segunda borda do bloco e o primeiro parâmetro de deslocamento de amostra de predição é igual ou diferente do segundo parâmetro de deslocamento de amostra de predição.
[0085] 0 conjunto de modos de predição intra disponíveis pode depender do formato do bloco de predição (ou seja, a largura e altura do bloco de predição no caso de estruturas de bloco retangular).
[0086] 0 modo de predição intra direcional com um determinado identificador pode ser interpretado como tendo uma primeira angularidade se a largura do bloco for maior do que a altura do bloco, e uma segunda angularidade se a largura do bloco for menor do que a altura do bloco, sendo que a primeira angularidade é diferente da segunda
Petição 870190061960, de 03/07/2019, pág. 52/98
45/69 angularidade .
[0087] Pode haver um primeiro modo de predição intra que tem uma angularidade entre -45 graus e +45 graus em relação à direção principal diretamente horizontal ou diretamente vertical, gue tem um modo de ângulo amplo correspondente com angularidade de pelo menos +45 graus em relação à outra direção principal do que a direção principal do primeiro modo de predição intra.
[0088] A seleção de contexto para decodificação por entropia de um modo de predição intra pode depender do formato do bloco. Por exemplo, um decodificador aritmético binário pode usar diferentes probabilidades esperadas para identificadores de modo dependendo de o bloco ser quadrado: assumir probabilidade aproximadamente igual para as direções para cima e esquerda para blocos quadrados, mas inclinar a direção da borda mais longa se o bloco não for quadrado. Na prática, isso melhora a eficiência de codificação porque palavras-código menores são usadas para símbolos mais prováveis de serem codificados.
[0089] 0 codificador e decodificador pode identificar um conjunto de modos mais prováveis para o bloco de predição com base no formato do bloco e codificar/decodificar um identificador que indica se o modo selecionado é um dos modos mais prováveis.
[0090] 0 codificador e decodificador pode identificar um conjunto de modos mais prováveis para o bloco de predição com base no formato do bloco e codificar/decodificar um identificador que indica quais dos ditos modos mais prováveis é aquele selecionado para o bloco.
[0091] 0 método e dispositivos propostos podem melhorar
Petição 870190061960, de 03/07/2019, pág. 53/98
46/69 a precisão de predição intra direcional. 0 mesmo também fornece um mecanismo de sinalização eficiente para o caso em que se tem modos de predição direcional com direcionalidades opostas na lista de modos de predição disponíveis.
[0092] Na Fig. 6a, um fluxograma de um método de decodificação é mostrado. Na fase 610, os pixels de referência podem ser formados a partir de um fluxo de bits recebido para a predição direcional intraimagem. Na fase 612, os valores de pixel podem ser preditos para obter um bloco predito. A predição pode ser realizada com o uso da direção de predição de ângulo amplo, conforme descrito anteriormente. Na fase 614, o bloco submetido à predição intra de ângulo amplo obtido pode ser usado na decodificação de um bloco de imagem a partir do fluxo de bits. Um sinal de erro de predição pode ser decodificado a partir do fluxo de bits e adicionado ao bloco de imagem predito para obter um bloco de imagem decodificado.
[0093] Na Fig. 6b, um fluxograma de um método de codificação é mostrado. Na fase 616, os pixels de referência podem ser formados a partir de dados de imagem a serem codificados. Esses pixels de referência podem ser usados na predição direcional intraimagem a seguir. Na fase 618, os valores de pixel podem ser preditos para obter um bloco predito com direção de predição de ângulo amplo, conforme descrito anteriormente. Na fase 619, o bloco submetido à predição intra de ângulo amplo pode ser usado na codificação de um bloco de imagem em um fluxo de bits. 0 bloco predito pode ser subtraído do bloco de imagem a ser codificado para obter um sinal de erro de predição. 0 sinal
Petição 870190061960, de 03/07/2019, pág. 54/98
47/69 de erro e parâmetros e indicadores para a predição direcional intraimagem podem ser codificados no fluxo de bits.
[0094] Na Fig. 6c, um fluxograma de um método de decodificação é mostrado. Na fase 620, os pixels de referência podem ser formados a partir de um fluxo de bits recebido para a predição direcional intraimagem. Na fase 622, o formato do bloco a ser predito pode ser determinado a partir do fluxo de bits. Na fase 624, os modos de predição direcional que estão em uso com base no formato podem ser determinados. Na fase 626, pode-se determinar se o modo de predição direcional usado está nos modos prováveis conforme determinado pelo formato. Na fase 630, um indicador de seleção de modo pode ser recebido a partir do fluxo de bits. Na fase 634, o modo a ser usado pode ser selecionado entre um modo primário e um inverso do modo primário. Na fase 636, o modo a ser usado pode ser selecionado com base no formato do bloco. Na fase 638, o modo a ser usado pode ser selecionado dentre os modos preditos com base no formato do bloco. Na fase 640, os valores de pixel podem ser preditos para obter um bloco predito. A predição pode ser realizada com o uso da direção de predição de ângulo amplo, conforme descrito anteriormente. Na fase 642, o bloco submetido à predição intra de ângulo amplo obtido pode ser usado na decodificação de um bloco de imagem a partir do fluxo de bits. Um sinal de erro de predição pode ser decodificado a partir do fluxo de bits e adicionado ao bloco de imagem predito para obter um bloco de imagem decodificado. No método da Fig. 6c, as fases podem estar em uma ordem
Petição 870190061960, de 03/07/2019, pág. 55/98
48/69 diferente daquela desenhada nas figuras. Fases individuais podem ser realizadas ou podem ser omitidas. Diferentes fases podem ser combinadas, ou diferentes fases podem ser tratadas como alternativas.
[0095] Na Fig. 6d, um fluxograma de um método de codificação é mostrado. Na fase 660, os pixels de referência podem ser formados a partir de dados de imagem a serem codificados. Esses pixels de referência podem ser usados na predição direcional intraimagem a seguir. Na fase 662, o formato do bloco a ser predito pode ser determinado de modo gue possa ser usado na predição direcional subsequente. Na fase 664, os modos de predição direcional que estão em uso com base no formato podem ser determinados. Na fase 667, pode-se determinar se o modo de predição direcional usado está nos modos prováveis conforme determinado pelo formato. Na fase 670, um indicador de seleção de modo pode ser codificado no fluxo de bits. Na fase 672, o modo a ser usado pode ser selecionado entre um modo primário e um inverso do modo primário. Na fase 674, o modo a ser usado pode ser selecionado com base no formato do bloco. Na fase 676, o modo a ser usado pode ser selecionado dentre os modos preditos com base no formato do bloco. Na fase 680, os valores de pixel podem ser preditos para obter um bloco predito com direção de predição de ângulo amplo, conforme descrito anteriormente. Na fase 682, o bloco submetido à predição intra de ângulo amplo pode ser usado na codificação de um bloco de imagem em um fluxo de bits. O bloco predito pode ser subtraído do bloco de imagem a ser codificado para obter um sinal de erro de predição. O sinal de erro e parâmetros e indicadores para a predição
Petição 870190061960, de 03/07/2019, pág. 56/98
49/69 direcional intraimagem podem ser codificados no fluxo de bits. No método da Fig. 6d, as fases podem estar em uma ordem diferente daquela desenhada nas figuras. Fases individuais podem ser realizadas ou podem ser omitidas. Diferentes fases podem ser combinadas, ou diferentes fases podem ser tratadas como alternativas.
[0096] A seguir, são dados exemplos numerados.
1. Um método que compreende:
- receber um fluxo de bits que compreende dados de imagem codificados,
- formar, a partir do dito fluxo de bits em uma memória de computador um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
- predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
- repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
- usar o dito bloco de imagem predito na decodificação de um bloco de imagem a partir do dito fluxo de bits para obter um bloco de imagem decodificado.
2. 0 método, de acordo com o exemplo 1, em que o dito bloco de imagem predito tem um formato, que compreende:
Petição 870190061960, de 03/07/2019, pág. 57/98
50/69
- determinar o dito formato a partir do dito fluxo de bits,
- determinar modos de predição direcional a serem usados na
dita predição direcional intraimagem com base no dito
formato,
- ao predizer o dito valor de pixel, selecionar a dita
direção de predição a partir dos ditos modos de predição direcional.
3. O método, de acordo com o exemplo 1 ou 2, em que o
dito bloco de imagem predito tem um formato, sendo que o
método compreende:
- determinar o dito formato a partir do dito fluxo de bits, determinar modos de predição a serem usados na dita predição direcional intraimagem,
- determinar modos de predição prováveis com base no dito formato,
- decodificar um indicador a partir do dito fluxo de bits
que indica se a dita direção de predição é um dos ditos
modos de predição prováveis, e
- selecionar a dita direção de predição a partir dos ditos
modos de predição prováveis.
4. O método, de acordo com o exemplo 1, 2 ou 3, que compreende:
- determinar modos de predição direcional a serem usados na dita predição direcional intraimagem,
- decodificar um indicador de direção a partir do dito
fluxo de bits,
selecionar a dita direção de predição para a dita
predição do dito valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo, sendo que a dita direção primária e uma direção de ângulo amplo são
Petição 870190061960, de 03/07/2019, pág. 58/98
51/69 associadas ao dito indicador de direção.
5. 0 método, de acordo com o exemplo 4, que compreende:
decodificar um indicador de seleção de direção de predição a partir do dito fluxo de bits, e selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir da dita direção normal e a dita direção de ângulo amplo com o uso do dito indicador de seleção de direção de predição.
6. 0 método, de acordo com o exemplo 4, em que o dito bloco de imagem predito tem um formato, que compreende:
- determinar o dito formato a partir do dito fluxo de bits, selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e uma direção de ângulo amplo com base no dito formato.
7. 0 método, de acordo com qualquer um dos exemplos 4 a 6, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam direções essencialmente opostas.
8. 0 método, de acordo com qualquer um dos exemplos 4 a 6, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam diferentes de direções essencialmente opostas e que a dita direção primária e a dita direção de ângulo amplo estejam em lados opostos da dita direção superior esquerda.
9. 0 método, de acordo com qualquer um dos exemplos 4 a 8, em que há mais de uma direção de ângulo amplo
Petição 870190061960, de 03/07/2019, pág. 59/98
52/69 associada a uma direção primária, ou mais de uma direção primária tem a mesma direção de ângulo amplo associada, ou ambas.
10. O método, de acordo com qualquer um dos exemplos 1 a 9, em que o dito bloco de imagem predito tem um formato, sendo que o método compreende:
- determinar o dito formato a partir do dito fluxo de bits, determinar modos de predição a serem usados na dita predição direcional intraimagem,
- decodificar um indicador de direção a partir do dito fluxo de bits, formar uma direção de predição predita para a dita predição do dito valor de pixel entre uma direção normal e uma direção de ângulo amplo com o uso do dito formato, sendo que a dita direção normal e uma direção de ângulo amplo são associadas ao dito indicador de direção, e
- selecionar a dita direção de predição com base na dita direção de predição predita.
11. Um método que compreende:
- receber dados de imagem a serem codificados,
- formar, a partir dos ditos dados de imagem em uma memória de computador, um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
- predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita
Petição 870190061960, de 03/07/2019, pág. 60/98
53/69 direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
- repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
- usar o dito bloco de imagem predito na codificação de um bloco de imagem em um fluxo de bits.
12. 0 método, de acordo com o exemplo 11, em que o dito bloco de imagem predito tem um formato, que compreende:
- determinar modos de predição direcional a serem usados na dita predição direcional intraimagem com base no dito formato,
- ao predizer o dito valor de pixel, selecionar a dita direção de predição a partir dos ditos modos de predição direcional.
13. 0 método, de acordo com o exemplo 11 ou 12, em que o dito bloco de imagem predito tem um formato, sendo que o método compreende:
determinar modos de predição a serem usados na dita predição direcional intraimagem,
- determinar modos de predição prováveis com base no dito formato,
- selecionar a dita direção de predição a partir dos ditos modos de predição prováveis, e
- codificar um indicador no dito fluxo de bits que indica se a dita direção de predição é um dos ditos modos de predição prováveis.
14. 0 método, de acordo com o exemplo 11, 12 ou 13, que compreende:
Petição 870190061960, de 03/07/2019, pág. 61/98
54/69
- determinar modos de predição direcional a serem usados na dita predição direcional intraimagem, selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo, sendo que a dita direção primária e uma direção de ângulo amplo são associadas ao dito indicador de direção, e
- codificar um indicador de direção no dito fluxo de bits.
15. 0 método, de acordo com o exemplo 14, que compreende:
selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir da dita direção normal e a dita direção de ângulo amplo com o uso do dito indicador de seleção de direção de predição, e
- codificar um indicador de seleção de direção de predição no dito fluxo de bits.
16. 0 método de acordo com o exemplo 14, em que o dito bloco de imagem decodificado tem um formato, que compreende:
selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e uma direção de ângulo amplo com base no dito formato.
17. 0 método, de acordo com qualquer um dos exemplos 14 a 16, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam direções essencialmente opostas.
18. 0 método, de acordo com qualquer um dos exemplos 14 a 16, em que a dita direção primária é associada à dita
Petição 870190061960, de 03/07/2019, pág. 62/98
55/69 direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam diferentes de direções essencialmente opostas e que a dita direção primária e a dita direção de ângulo amplo estejam em lados opostos da dita direção superior esquerda.
19. 0 método, de acordo com qualquer um dos exemplos 14 a 18, em que há mais de uma direção de ângulo amplo associada a uma direção primária, ou mais de uma direção primária tem a mesma direção de ângulo amplo associada, ou ambas.
20. O método, de acordo com qualquer um dos exemplos 11 a 19, em que o dito bloco de imagem decodificado tem um formato, sendo que o método compreende:
determinar modos de predição a serem usados na dita predição direcional intraimagem, formar uma direção de predição predita para a dita predição do dito valor de pixel entre uma direção normal e uma direção de ângulo amplo com o uso do dito formato, sendo que a dita direção normal e uma direção de ângulo amplo são associadas a um indicador de direção, e
- selecionar a dita direção de predição com base na dita direção de predição predita, e
- codificar um indicador de direção no dito fluxo de bits.
21. Um aparelho que compreende pelo menos um processador, memória incluindo código de programa de computador, sendo que a memória e o código de programa de computador são configurados para, com o pelo menos um processador, fazer com que o aparelho realize pelo menos o seguinte:
- receber um fluxo de bits que compreende dados de imagem
Petição 870190061960, de 03/07/2019, pág. 63/98
56/69 codificados,
- formar, a partir do dito fluxo de bits em uma memória de computador um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
- predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
- repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
- usar o dito bloco de imagem predito na decodificação de um bloco de imagem a partir do dito fluxo de bits para obter um bloco de imagem decodificado.
22. 0 aparelho, de acordo com o exemplo 21, em que o dito bloco de imagem predito tem um formato, sendo que o aparelho compreende código de programa de computador para fazer o aparelho:
- determinar o dito formato a partir do dito fluxo de bits,
- determinar modos de predição direcional a serem usados na dita predição direcional intraimagem com base no dito formato,
- ao predizer o dito valor de pixel, selecionar a dita direção de predição a partir dos ditos modos de predição direcional.
Petição 870190061960, de 03/07/2019, pág. 64/98
57/69
23. 0 aparelho, de acordo com o exemplo 21 ou 22, em que o dito bloco de imagem predito tem um formato, sendo que o aparelho compreende código de programa de computador para fazer o aparelho:
- determinar o dito formato a partir do dito fluxo de bits, determinar modos de predição a serem usados na dita predição direcional intraimagem,
- determinar modos de predição prováveis com base no dito formato,
- decodificar um indicador a partir do dito fluxo de bits que indica se a dita direção de predição é um dos ditos modos de predição prováveis, e
- selecionar a dita direção de predição a partir dos ditos modos de predição prováveis.
24. 0 aparelho, de acordo com o exemplo 21, 22 ou 23, que compreende código de programa de computador para fazer o aparelho:
- determinar modos de predição direcional a serem usados na dita predição direcional intraimagem,
- decodificar um indicador de direção a partir do dito fluxo de bits, selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo, sendo que a dita direção primária e uma direção de ângulo amplo são associadas ao dito indicador de direção.
25. 0 aparelho, de acordo com o exemplo 24, que compreende código de programa de computador para fazer o aparelho:
decodificar um indicador de seleção de direção de
Petição 870190061960, de 03/07/2019, pág. 65/98
58/69 predição a partir do dito fluxo de bits, e selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir da dita direção normal e a dita direção de ângulo amplo com o uso do dito indicador de seleção de direção de predição.
26. 0 aparelho, de acordo com o exemplo 24, em que o dito bloco de imagem predito tem um formato, sendo que o aparelho compreende código de programa de computador para fazer o aparelho:
- determinar o dito formato a partir do dito fluxo de bits, selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e uma direção de ângulo amplo com base no dito formato.
27. 0 aparelho, de acordo com qualquer um dos exemplos 24 a 26, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam direções essencialmente opostas.
28. 0 aparelho, de acordo com qualquer um dos exemplos 24 a 26, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam diferentes de direções essencialmente opostas e que a dita direção primária e a dita direção de ângulo amplo estejam em lados opostos da dita direção superior esquerda.
29. 0 aparelho, de acordo com qualquer um dos exemplos 24 a 28, em que há mais de uma direção de ângulo amplo associada a uma direção primária, ou mais de uma direção primária tem a mesma direção de ângulo amplo associada, ou
Petição 870190061960, de 03/07/2019, pág. 66/98
59/69 ambas .
30. O aparelho, de acordo com qualquer um dos exemplos 21 a 29, em que o dito bloco de imagem predito tem um formato, sendo que o aparelho compreende código de programa de computador para fazer o aparelho:
determinar modos de predição a serem usados na dita predição direcional intraimagem, formar uma direção de predição predita para a dita predição do dito valor de pixel entre uma direção normal e uma direção de ângulo amplo com o uso do dito formato, sendo que a dita direção normal e uma direção de ângulo amplo são associadas a um indicador de direção,
- selecionar a dita direção de predição com base na dita direção de predição predita, e
- codificar o dito indicador de direção no dito fluxo de bits.
31. Um sistema que compreende pelo menos um processador, memória incluindo código de programa de computador, sendo que a memória e o código de programa de computador são configurados para, com o pelo menos um processador, fazer com que o sistema realize pelo menos o seguinte:
- receber um fluxo de bits que compreende dados de imagem codificados,
- formar, a partir do dito fluxo de bits em uma memória de computador um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
- predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de
Petição 870190061960, de 03/07/2019, pág. 67/98
60/69 um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
- repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
- usar o dito bloco de imagem predito na decodificação de um bloco de imagem a partir do dito fluxo de bits para obter um bloco de imagem decodificado.
32. Um sistema que compreende pelo menos um processador, memória incluindo código de programa de computador, sendo que a memória e o código de programa de computador são configurados para, com o pelo menos um processador, fazer com que o sistema realize pelo menos o seguinte:
- receber dados de imagem a serem codificados,
- formar, a partir dos ditos dados de imagem em uma memória de computador, um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
- predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita direção de predição é uma direção de predição de ângulo
Petição 870190061960, de 03/07/2019, pág. 68/98
61/69 amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
- repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
- usar o dito bloco de imagem predito na codificação de um bloco de imagem em um fluxo de bits.
33. Um parelho que compreende:
- meio para receber um fluxo de bits que compreende dados de imagem codificados,
- meio para formar, a partir do dito fluxo de bits em uma memória de computador um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
- meio para predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
- meio para repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito, meio para usar o dito bloco de imagem predito na decodificação de um bloco de imagem a partir do dito fluxo de bits para obter um bloco de imagem decodificado.
34. Um aparelho de acordo com o exemplo 33, em que o dito bloco de imagem predito tem um formato, que
Petição 870190061960, de 03/07/2019, pág. 69/98
62/69 compreende :
- meio para determinar o dito formato a partir do dito fluxo de bits,
- meio para determinar modos de predição direcional a serem usados na dita predição direcional intraimagem com base no dito formato,
- meio para, ao predizer o dito valor de pixel, selecionar a dita direção de predição a partir dos ditos modos de predição direcional.
35. 0 aparelho, de acordo com o exemplo 33 ou 34, em que o dito bloco de imagem predito tem um formato, sendo que o aparelho compreende:
- meio para determinar o dito formato a partir do dito fluxo de bits,
- meio para determinar modos de predição a serem usados na dita predição direcional intraimagem,
- meio para determinar modos de predição prováveis com base no dito formato,
- meio para decodificar um indicador a partir do dito fluxo de bits que indica se a dita direção de predição é um dos ditos modos de predição prováveis, e
- meio para selecionar a dita direção de predição a partir dos ditos modos de predição prováveis.
36. 0 aparelho, de acordo com o exemplo 33, 34 ou 35, que compreende:
- meio para determinar modos de predição direcional a serem usados na dita predição direcional intraimagem,
- meio para decodificar um indicador de direção a partir do dito fluxo de bits,
- meio para selecionar a dita direção de predição para a
Petição 870190061960, de 03/07/2019, pág. 70/98
63/69 dita predição do dito valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo, sendo que a dita direção primária e uma direção de ângulo amplo são associadas ao dito indicador de direção.
37. 0 aparelho, de acordo com o exemplo 36, que compreende:
- meio para decodificar um indicador de seleção de direção de predição a partir do dito fluxo de bits, e
- meio para selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir da dita direção normal e a dita direção de ângulo amplo com o uso do dito indicador de seleção de direção de predição.
38. 0 aparelho, de acordo com o exemplo 36, em que o dito bloco de imagem predito tem um formato, que compreende:
- meio para determinar o dito formato a partir do dito fluxo de bits,
- meio para selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo com base no dito formato.
39. 0 aparelho, de acordo com qualquer um dos exemplos 36 a 38, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam direções essencialmente opostas.
40. O aparelho, de acordo com qualquer um dos exemplos 36 a 38, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam diferentes
Petição 870190061960, de 03/07/2019, pág. 71/98
64/69 de direções essencialmente opostas e que a dita direção primária e a dita direção de ângulo amplo estejam em lados opostos da dita direção superior esquerda.
41. 0 aparelho, de acordo com qualquer um dos exemplos 3 6 a 40, em que há mais de uma direção de ângulo amplo associada a uma direção primária, ou mais de uma direção primária tem a mesma direção de ângulo amplo associada, ou ambas.
42. O aparelho, de acordo com qualquer um dos exemplos 33 a 41, em que o dito bloco de imagem predito tem um formato, sendo que o aparelho que compreende:
- meio para determinar o dito formato a partir do dito fluxo de bits,
- meio para determinar modos de predição a serem usados na dita predição direcional intraimagem,
- meio para decodificar um indicador de direção a partir do dito fluxo de bits,
- meio para formar uma direção de predição predita para a dita predição do dito valor de pixel entre uma direção normal e uma direção de ângulo amplo com o uso do dito formato, sendo que a dita direção normal e uma direção de ângulo amplo são associadas ao dito indicador de direção, e
- meio para selecionar a dita direção de predição com base na dita direção de predição predita.
43. Um parelho que compreende:
- meio para receber dados de imagem a serem codificados,
- meio para formar, a partir dos ditos dados de imagem em uma memória de computador, um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
Petição 870190061960, de 03/07/2019, pág. 72/98
65/69
- meio para predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
- meio para repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito, meio para usar o dito bloco de imagem predito na codificação de um bloco de imagem em um fluxo de bits.
44. 0 aparelho, de acordo com o exemplo 43, em que o dito bloco de imagem predito tem um formato, que compreende:
- meio para determinar modos de predição direcional a serem usados na dita predição direcional intraimagem com base no dito formato,
- meio para, ao predizer o dito valor de pixel, selecionar a dita direção de predição a partir dos ditos modos de predição direcional.
45. 0 aparelho, de acordo com o exemplo 43 ou 44, em que o dito bloco de imagem predito tem um formato, sendo que o aparelho compreende:
- meio para determinar modos de predição a serem usados na dita predição direcional intraimagem,
- meio para determinar modos de predição prováveis com base no dito formato,
Petição 870190061960, de 03/07/2019, pág. 73/98
66/69
- meio para selecionar a dita direção de predição a partir dos ditos modos de predição prováveis, e
- meio para codificar um indicador no dito fluxo de bits que indica se a dita direção de predição é um dos ditos modos de predição prováveis.
46. 0 aparelho, de acordo com o exemplo 43, 44 ou 45, que compreende:
- meio para determinar modos de predição direcional a serem usados na dita predição direcional intraimagem,
- meio para selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo, sendo que a dita direção primária e uma direção de ângulo amplo são associadas ao dito indicador de direção e
- meio para codificar um indicador de direção no dito fluxo de bits.
47. 0 aparelho, de acordo com o exemplo 46, que compreende:
- meio para selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir da dita direção normal e a dita direção de ângulo amplo com o uso do dito indicador de seleção de direção de predição e
- meio para codificar um indicador de seleção de direção de predição no dito fluxo de bits.
48. 0 aparelho, de acordo com o exemplo 46, em que o dito bloco de imagem decodificado tem um formato, que compreende:
- meio para selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção primária e de uma direção de ângulo amplo com base
Petição 870190061960, de 03/07/2019, pág. 74/98
67/69 no dito formato.
49. 0 aparelho, de acordo com qualquer um dos exemplos 46 a 48, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam direções essencialmente opostas.
50. O aparelho, de acordo com qualquer um dos exemplos 46 a 48, em que a dita direção primária é associada à dita direção de ângulo amplo, de modo que a dita direção primária e a dita direção de ângulo amplo sejam diferentes de direções essencialmente opostas, e que a dita direção primária e a dita direção de ângulo amplo estejam em lados opostos da dita direção superior esquerda.
51. O aparelho, de acordo com qualquer um dos exemplos 4 6 a 50, em que há mais de uma direção de ângulo amplo associada a uma direção primária, ou mais de uma direção primária tem a mesma direção de ângulo amplo associada, ou ambas.
52. O aparelho, de acordo com qualquer um dos exemplos 43 a 51, em que o dito bloco de imagem decodificado tem um formato, sendo que o aparelho compreende:
- meio para determinar modos de predição a serem usados na dita predição direcional intraimagem,
- meio para formar uma direção de predição predita para a dita predição do dito valor de pixel entre uma direção normal e uma direção de ângulo amplo com o uso do dito formato, sendo que a dita direção normal e uma direção de ângulo amplo são associadas a um indicador de direção, e
- meio para selecionar a dita direção de predição com base na dita direção de predição predita, e
Petição 870190061960, de 03/07/2019, pág. 75/98
68/69
- meio para codificar um indicador de direção no dito fluxo de bits.
53. Um sinal de fluxo de bits incorporado em um meio legível por computador não transitório, sendo que o sinal é disposto para, quando decodificado em um decodificador, fazer o decodificador decodificar dados de imagem a partir do dito sinal de fluxo de bits, em que o sinal compreende um sinal de erro de predição codificado que foi formado com o uso de predição direcional intraimagem, em que valores de pixel preditos foram formados em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados foram selecionados a partir de uma direção de predição em relação ao pixel predito, e a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito, em que o sinal de fluxo de bits é disposto fara fazer o decodificador selecionar a direção de predição a ser uma direção de predição de ângulo amplo para a decodificação do fluxo de bits.
54. Um sinal de fluxo de bits incorporado em um meio legível por computador não transitório, sendo que o sinal é disposto para, quando decodificado em um decodificador, fazer o decodificador decodificar dados de imagem a partir do dito sinal de fluxo de bits, o sinal compreende informações para determinar um formato de um bloco de imagem a ser decodificado, a dita decodificação emprega predição direcional intraimagem que usa uma direção de predição, modos de predição prováveis são associados ao
Petição 870190061960, de 03/07/2019, pág. 76/98
69/69 dito formato, e o dito fluxo de bits compreende um indicador que indica se a dita direção de predição é um dos ditos modos de predição prováveis associado ao dito formato para fazer o decodificador selecionar a direção de predição para decodificar o fluxo de bits.
[0097] As várias modalidades da invenção podem ser implementadas com o auxilio de código de programa de computador que se encontra em uma memória e faz com que os aparelhos relevantes realizem a invenção. Por exemplo, um dispositivo pode compreender conjuntos de circuitos e componentes eletrônicos para manipular, receber e transmitir dados, código de programa de computador em uma memória, e um processador que, quando executa o código de programa de computador, faz com que o dispositivo realize os recursos de uma modalidade. Além disso, um dispositivo de rede, como um servidor, pode compreender conjuntos de circuitos e componentes eletrônicos para manipular, receber e transmitir dados, código de programa de computador em uma memória, e um processador que, quando executa o código de programa de computador, faz com que o dispositivo realize os recursos de uma modalidade.
[0098] É evidente que a presente invenção não é limitada somente às modalidades apresentadas acima, mas pode ser modificada dentro do escopo das reivindicações anexas.

Claims (13)

  1. REIVINDICAÇÕES
    1. Método caracterizado por compreender:
    - receber um fluxo de bits que compreende dados de imagem codificados,
    - formar, a partir do dito fluxo de bits em uma memória de computador um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
    - determinar um modo de predição intra para um bloco de imagem,
    - determinar se tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estão associadas ao dito modo de predição intra, sendo que a dita direção de predição de ângulo amplo forma um ângulo obtuso com a direção superior esquerda,
    - no caso de tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estarem associadas ao dito modo de predição intra, determinar a partir do dito fluxo de bits um elemento de sintaxe e, com base em um valor do dito elemento de sintaxe, definir uma direção de predição do dito bloco de imagem como sendo a dita direção de predição de ângulo amplo,
    - predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir da dita direção de predição de ângulo amplo em relação ao pixel predito,
    - repetir a predição de pixel para um número de pixels para
    Petição 870190061960, de 03/07/2019, pág. 78/98
  2. 2/9 formar um bloco de imagem predito,
    - usar o dito bloco de imagem predito na decodificação de um bloco de imagem a partir do dito fluxo de bits para obter um bloco de imagem decodificado.
    2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o dito bloco de imagem predito tem um formato que compreende:
    - determinar o dito formato a partir do dito fluxo de bits,
    - com base no dito formato, determinar se tanto uma direção de predição de ângulo obtuso quanto uma direção de predição de ângulo agudo estão associadas ao dito modo de predição intra.
  3. 3. Método, de acordo com a reivindicação 1 ou 2, caracterizado pelo fato de que o dito bloco de imagem predito tem um formato, sendo que o método compreende:
    - determinar o dito formato a partir do dito fluxo de bits, determinar modos de predição a serem usados na dita predição direcional intraimagem,
    - determinar modos de predição prováveis com base no dito formato,
    - decodificar um indicador a partir do dito fluxo de bits que indica se a dita direção de predição é um dos ditos modos de predição prováveis, e
    - selecionar a dita direção de predição a partir dos ditos modos de predição prováveis.
  4. 4. Método, de acordo com a reivindicação 1, 2 ou 3, caracterizado por compreender:
    - determinar modos de predição direcional a serem usados na dita predição direcional intraimagem,
    - decodificar um indicador de direção a partir do dito
    Petição 870190061960, de 03/07/2019, pág. 79/98
    3/9 fluxo de bits, selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção de ângulo estreito e de uma direção de ângulo amplo, em que a dita direção de ângulo estreito e uma direção de ângulo amplo estão associadas ao dito indicador de direção.
  5. 5. Método, de acordo com a reivindicação 4, caracterizado por compreender:
    decodificar um indicador de seleção de direção de predição a partir do dito fluxo de bits, e selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir da dita direção de ângulo estreito e da dita direção de ângulo amplo com o uso do dito indicador de seleção de direção de predição.
  6. 6. Método, de acordo com a reivindicação 4, caracterizado pelo fato de que o dito bloco de imagem predito tem um formato que compreende:
    - determinar o dito formato a partir do dito fluxo de bits, selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção de ângulo estreito e de uma direção de ângulo amplo com base no dito formato.
  7. 7. Método caracterizado por compreender:
    - receber dados de imagem a serem codificados,
    - formar, a partir dos ditos dados de imagem em uma memória de computador, um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
    - determinar um modo de predição intra para um bloco de imagem,
    Petição 870190061960, de 03/07/2019, pág. 80/98
    4/9
    - determinar se tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estão associadas ao dito modo de predição intra, sendo que a dita direção de predição de ângulo amplo forma um ângulo obtuso com a direção superior esquerda,
    - no caso de tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estarem associadas ao dito modo de predição intra, formar no dito fluxo de bits um elemento de sintaxe que indica a direção de predição e, com base em um valor do dito elemento de sintaxe, definir uma direção de predição do dito bloco de imagem como sendo a dita direção de predição de ângulo amp1o,
    - predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem que usa valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito,
    - repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
    - usar o dito bloco de imagem predito na codificação de um bloco de imagem em um fluxo de bits.
  8. 8. Método, de acordo com a reivindicação 7, caracterizado pelo fato de que o dito bloco de imagem predito tem um formato, sendo que o método compreende:
    determinar modos de predição a serem usados na dita predição direcional intraimagem,
    - determinar modos de predição prováveis com base no dito formato,
    Petição 870190061960, de 03/07/2019, pág. 81/98
    5/9
    - selecionar a dita direção de predição a partir dos ditos modos de predição prováveis, e
    - codificar um indicador no dito fluxo de bits que indica se a dita direção de predição é um dos ditos modos de predição prováveis.
  9. 9. Método, de acordo com a reivindicação 7 ou 8, caracterizado por compreender:
    - determinar modos de predição direcional a serem usados na dita predição direcional intraimagem, selecionar a dita direção de predição para a dita predição do dito valor de pixel a partir de uma direção de ângulo estreito e de uma direção de ângulo amplo, em que a dita direção de ângulo estreito e uma direção de ângulo amplo estão associadas ao dito indicador de direção e
    - codificar um indicador de direção no dito fluxo de bits.
  10. 10. Aparelho caracterizado por compreender pelo menos um processador, memória incluindo código de programa de computador, sendo que a memória e o código de programa de computador são configurados para, com o pelo menos um processador, fazer com que o aparelho realize pelo menos o seguinte:
    - receber um fluxo de bits que compreende dados de imagem codificados,
    - formar, a partir do dito fluxo de bits em uma memória de computador um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
    - determinar um modo de predição intra para um bloco de imagem,
    - determinar se tanto uma direção de predição de ângulo
    Petição 870190061960, de 03/07/2019, pág. 82/98
    6/9 amplo quanto uma direção de predição de ângulo estreito estão associadas ao dito modo de predição intra, sendo que a dita direção de predição de ângulo amplo forma um ângulo obtuso com a direção superior esquerda,
    - no caso de tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estarem associadas ao dito modo de predição intra, determinar a partir do dito fluxo de bits um elemento de sintaxe e, com base em um valor do dito elemento de sintaxe, definir uma direção de predição do dito bloco de imagem como sendo a dita direção de predição de ângulo amplo,
    - predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir de uma direção de predição em relação ao pixel predito, e sendo que a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito,
    - repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
    - usar o dito bloco de imagem predito na decodificação de um bloco de imagem a partir do dito fluxo de bits para obter um bloco de imagem decodificado.
  11. 11. Aparelho caracterizado por compreender pelo menos um processador, memória incluindo código de programa de computador, sendo que a memória e o código de programa de computador são configurados para, com o pelo menos um processador, fazer com que o aparelho realize pelo menos o
    Petição 870190061960, de 03/07/2019, pág. 83/98
    7/9 seguinte :
    - receber dados de imagem a serem codificados,
    - formar, a partir dos ditos dados de imagem em uma memória de computador, um conjunto de pixels de referência que tem valores de pixel de referência para a predição direcional intraimagem,
    - determinar um modo de predição intra para um bloco de imagem,
    - determinar se tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estão associadas ao dito modo de predição intra, sendo que a dita direção de predição de ângulo amplo forma um ângulo obtuso com a direção superior esquerda,
    - no caso de tanto uma direção de predição de ângulo amplo e de uma direção de predição de ângulo estreito estarem associadas ao dito modo de predição intra, formar um elemento de sintaxe no dito fluxo de bits que indica a direção de predição e, com base em um valor do dito elemento de sintaxe, definir uma direção de predição do dito bloco de imagem como sendo a dita direção de predição de ângulo amplo,
    - predizer um valor de pixel em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados são selecionados a partir da dita direção de predição de ângulo amplo em relação ao pixel predito,
    - repetir a predição de pixel para um número de pixels para formar um bloco de imagem predito,
    - usar o dito bloco de imagem predito na codificação de um
    Petição 870190061960, de 03/07/2019, pág. 84/98
    8/9 bloco de imagem em um fluxo de bits.
  12. 12. Aparelho caracterizado por compreender pelo menos um processador, memória incluindo código de programa de computador, sendo que a memória e o código de programa de computador são configurados para, com o pelo menos um processador, fazer o aparelho realizar o método, conforme definido em qualquer uma das reivindicações 1 a 9.
  13. 13. Sinal de fluxo de bits incorporado em um meio legível por computador não transitório, sendo que o sinal é caracterizado pelo fato de que é disposto para, quando decodificado em um decodificador, fazer o decodificador decodificar dados de imagem a partir do dito sinal de fluxo de bits, em que o sinal compreende um sinal de erro de predição codificado que foi formado com o uso de predição direcional intraimagem, em que valores de pixel preditos foram formados em um bloco de imagem predito por predição direcional intraimagem com o uso de valores de um ou mais pixels de referência selecionados na formação de um valor de pixel predito, em que os pixels de referência selecionados foram selecionados a partir de uma direção de predição em relação ao pixel predito, e a dita direção de predição é uma direção de predição de ângulo amplo que forma um ângulo obtuso com a direção superior esquerda do dito pixel predito, em que o sinal de fluxo de bits é disposto para fazer o decodificador selecionar a direção de predição como sendo uma direção de predição de ângulo amplo para a decodificação do fluxo de bits ao determinar um modo de predição intra para um bloco de imagem, determinar se tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estão associadas ao
    Petição 870190061960, de 03/07/2019, pág. 85/98
    9/9 dito modo de predição intra, sendo que a dita direção de predição de ângulo amplo forma um ângulo obtuso com a direção superior esquerda, no caso de tanto uma direção de predição de ângulo amplo quanto uma direção de predição de ângulo estreito estarem associadas ao dito modo de predição intra, determinar com base em um elemento de sintaxe no dito fluxo de bits a direção de predição como sendo a dita direção de predição de ângulo amplo.
BR112019013797A 2017-01-03 2017-12-29 codificação de imagem e vídeo com predição intra de ângulo amplo BR112019013797A2 (pt)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
FI20175006A FI20175006A1 (en) 2017-01-03 2017-01-03 Video and image coding using wide-angle intra-prediction
PCT/FI2017/050950 WO2018127624A1 (en) 2017-01-03 2017-12-29 Video and image coding with wide-angle intra prediction

Publications (1)

Publication Number Publication Date
BR112019013797A2 true BR112019013797A2 (pt) 2020-01-21

Family

ID=62789367

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019013797A BR112019013797A2 (pt) 2017-01-03 2017-12-29 codificação de imagem e vídeo com predição intra de ângulo amplo

Country Status (13)

Country Link
US (1) US11044467B2 (pt)
EP (3) EP4383704A2 (pt)
JP (3) JP6913755B2 (pt)
KR (2) KR102360648B1 (pt)
CN (2) CN110140356B (pt)
AU (1) AU2017391028B2 (pt)
BR (1) BR112019013797A2 (pt)
CA (2) CA3048115C (pt)
FI (1) FI20175006A1 (pt)
PH (1) PH12019501445A1 (pt)
RU (1) RU2732996C1 (pt)
WO (1) WO2018127624A1 (pt)
ZA (1) ZA201904958B (pt)

Families Citing this family (47)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10834408B2 (en) * 2016-05-02 2020-11-10 Industry-University Cooperation Foundation Hanyang University Image encoding/decoding method and apparatus using intra-screen prediction
US10764587B2 (en) * 2017-06-30 2020-09-01 Qualcomm Incorporated Intra prediction in video coding
JP6956543B2 (ja) * 2017-07-03 2021-11-02 日本放送協会 決定装置、符号化装置、復号装置及びプログラム
JP2019041165A (ja) 2017-08-23 2019-03-14 富士通株式会社 画像符号化装置、画像復号装置、画像処理方法、及び画像処理プログラム
WO2019083284A1 (ko) 2017-10-24 2019-05-02 주식회사 윌러스표준기술연구소 비디오 신호 처리 방법 및 장치
CN111316640B (zh) * 2017-11-17 2023-09-26 鸿颖创新有限公司 基于调整的帧内模式列表以编码视频数据的设备及方法
MX2020005757A (es) * 2017-12-08 2020-08-20 Panasonic Ip Corp America Dispositivo codificador de imagenes, dispositivo decodificador de imagenes, metodo de codificacion de imagenes y metodo de decodificacion de imagenes.
KR101842178B1 (ko) * 2018-01-19 2018-05-14 광성(주) 선박용 황산화물 저감장치 및 선박용 황산화물 저감장치의 운전방법
US10841578B2 (en) 2018-02-12 2020-11-17 Tencent America LLC Method and apparatus for using an intra prediction coding tool for intra prediction of non-square blocks in video compression
CN112042190B (zh) 2018-04-24 2024-01-23 三星电子株式会社 视频编码方法和装置以及视频解码方法和装置
MX2020012068A (es) * 2018-05-14 2021-02-09 Interdigital Vc Holdings Inc Direcciones de prediccion intra adaptativas a la forma de bloque para arbol cuadruple-arbol binario.
CA3102546A1 (en) 2018-06-27 2020-01-02 Kt Corporation Method and apparatus for processing video signal
US11509889B2 (en) 2018-06-27 2022-11-22 Kt Corporation Method and apparatus for processing video signal
EP3815359A1 (en) * 2018-06-27 2021-05-05 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Contour mode prediction
US10567752B2 (en) * 2018-07-02 2020-02-18 Tencent America LLC Method and apparatus for intra prediction for non-square blocks in video compression
US10284844B1 (en) 2018-07-02 2019-05-07 Tencent America LLC Method and apparatus for video coding
US10382772B1 (en) * 2018-07-02 2019-08-13 Tencent America LLC Method and apparatus for video coding
US11128872B2 (en) 2018-07-16 2021-09-21 Qualcomm Incorporated Position dependent intra prediction combination with wide angle intra prediction
WO2020018207A1 (en) 2018-07-16 2020-01-23 Interdigital Vc Holdings, Inc. Wide angle intra prediction and position dependent intra prediction combination
CN116546198A (zh) 2018-08-12 2023-08-04 Lg电子株式会社 解码装置、编码装置、存储介质和发送图像的数据的装置
KR20240007716A (ko) * 2018-09-13 2024-01-16 프라운호퍼 게젤샤프트 쭈르 푀르데룽 데어 안겐반텐 포르슝 에. 베. 아핀 선형 가중 인트라 예측
WO2020059051A1 (ja) * 2018-09-19 2020-03-26 富士通株式会社 映像符号化装置、映像符号化方法、映像符号化プログラム、映像復号装置、映像復号方法、及び映像復号プログラム
JP7323014B2 (ja) * 2018-09-19 2023-08-08 富士通株式会社 映像復号方法
US10469845B1 (en) * 2018-09-21 2019-11-05 Tencent America, Llc Method and apparatus for intra mode coding
US20220124337A1 (en) * 2018-09-21 2022-04-21 Interdigital Vc Holdings, Inc. Harmonization of intra transform coding and wide angle intra prediction
US20220046244A1 (en) * 2018-10-01 2022-02-10 Interdigital Vc Holdings, Inc. Directions for wide angle intra prediction
US20200112728A1 (en) * 2018-10-03 2020-04-09 Qualcomm Incorporated Wide-angle intra prediction for video coding
CA3119645C (en) * 2018-11-14 2024-05-28 Huawei Technologies Co., Ltd. Method and apparatus for intra prediction
US11109023B2 (en) * 2018-11-27 2021-08-31 Tencent America LLC Intra mode selection in intra prediction
EP4290862A3 (en) 2019-01-02 2024-03-27 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Intra-frame prediction method and device and computer-readable storage medium
CN113709459B (zh) 2019-01-02 2023-06-23 Oppo广东移动通信有限公司 帧内预测方法、装置及计算机存储介质
WO2020160482A1 (en) * 2019-02-01 2020-08-06 Beijing Dajia Internet Information Technology Co., Ltd. Methods and devices for intra sub-partition coding mode
US11533506B2 (en) * 2019-02-08 2022-12-20 Tencent America LLC Method and apparatus for video coding
US11425374B2 (en) 2019-03-12 2022-08-23 FG Innovation Company Limited Device and method for coding video data
WO2020216255A1 (en) * 2019-04-25 2020-10-29 Mediatek Inc. Method and apparatus of encoding or decoding with mode dependent intra smoothing filter in intra prediction
WO2020262408A1 (ja) 2019-06-25 2020-12-30 日本放送協会 イントラ予測装置、画像復号装置、及びプログラム
US11477444B2 (en) 2019-08-06 2022-10-18 Hfi Innovation Inc. Method and apparatus of encoding or decoding video data with intra prediction mode mapping
JP2022532444A (ja) * 2019-09-07 2022-07-14 ベイジン、ターチア、インターネット、インフォメーション、テクノロジー、カンパニー、リミテッド ビデオデータを復号化する方法、コンピューティングデバイス、非一時的コンピュータ可読記憶媒体、デコーダ可読記憶媒体、およびコンピュータプログラム製品
GB201913403D0 (en) * 2019-09-17 2019-10-30 Canon Kk Method and apparatus for encoding and decoding a video stream with subpictures
EP3955574A4 (en) * 2019-12-19 2022-09-21 Guangdong Oppo Mobile Telecommunications Corp., Ltd. IMAGE COMPONENT PREDICTION METHOD, ENCODER, DECODER AND MEMORY MEDIA
JP2020182247A (ja) * 2020-07-30 2020-11-05 富士通株式会社 画像符号化方法及び画像復号方法
JP2020182248A (ja) * 2020-07-30 2020-11-05 富士通株式会社 画像復号方法及び画像符号化方法
JP2020182249A (ja) * 2020-07-30 2020-11-05 富士通株式会社 画像符号化装置及び画像復号装置
US11432006B2 (en) * 2020-08-14 2022-08-30 Tencent America LLC Chroma mode video coding
CN111988627B (zh) * 2020-08-19 2024-01-23 北京达佳互联信息技术有限公司 一种视频编解码方法及设备
CN117882378A (zh) * 2021-09-22 2024-04-12 深圳市大疆创新科技有限公司 编解码方法及装置
CN116320428A (zh) * 2021-12-20 2023-06-23 维沃移动通信有限公司 帧间预测方法及终端

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2004030369A1 (en) * 2002-09-27 2004-04-08 Videosoft, Inc. Real-time video coding/decoding
WO2005057941A1 (ja) * 2003-12-10 2005-06-23 Nec Corporation プロジェクタの色補正方法
EP2136564A1 (en) 2007-01-09 2009-12-23 Kabushiki Kaisha Toshiba Image encoding and decoding method and device
KR101379255B1 (ko) * 2007-04-06 2014-03-28 삼성전자주식회사 미분 방정식을 이용한 인트라 예측 부호화, 복호화 방법 및장치
WO2009001793A1 (ja) 2007-06-26 2008-12-31 Kabushiki Kaisha Toshiba 画像符号化と画像復号化の方法及び装置
US8619857B2 (en) * 2010-04-09 2013-12-31 Sharp Laboratories Of America, Inc. Methods and systems for intra prediction
KR101739987B1 (ko) * 2010-12-28 2017-05-26 에스케이 텔레콤주식회사 주변블록의 특징벡터를 이용한 영상 부호화/복호화 방법 및 장치
CN102595118B (zh) 2011-01-14 2015-04-08 华为技术有限公司 一种编解码中的预测方法和预测器
JP2013012995A (ja) * 2011-06-30 2013-01-17 Sony Corp 画像処理装置および方法
US9787982B2 (en) * 2011-09-12 2017-10-10 Qualcomm Incorporated Non-square transform units and prediction units in video coding
GB2501518A (en) * 2012-04-27 2013-10-30 Canon Kk Encoding and Decoding an Image Comprising Blocks of Pixels Including Selecting the Prediction Mode of Prediction Units
JP6135239B2 (ja) * 2012-05-18 2017-05-31 株式会社リコー 画像処理装置、画像処理プログラム、画像処理方法
JP5885604B2 (ja) * 2012-07-06 2016-03-15 株式会社Nttドコモ 動画像予測符号化装置、動画像予測符号化方法、動画像予測符号化プログラム、動画像予測復号装置、動画像予測復号方法及び動画像予測復号プログラム
JP5841670B2 (ja) * 2012-09-28 2016-01-13 日本電信電話株式会社 イントラ予測符号化方法、イントラ予測復号方法、イントラ予測符号化装置、イントラ予測復号装置、それらのプログラム並びにプログラムを記録した記録媒体
US20140286413A1 (en) * 2013-03-25 2014-09-25 Qualcomm Incorporated Disabling sign data hiding in video coding
WO2014166381A1 (en) 2013-04-09 2014-10-16 Mediatek Singapore Pte. Ltd. Method and apparatus for non-square intra mode coding
EP3114840A4 (en) * 2014-03-04 2017-03-08 Microsoft Technology Licensing, LLC Dictionary encoding and decoding of screen content
JP6295805B2 (ja) * 2014-04-24 2018-03-20 富士通株式会社 画像符号化方法、画像符号化装置および画像符号化プログラム
EP3430808A4 (en) 2016-03-16 2020-01-15 Mediatek Inc. METHOD AND DEVICE FOR PROCESSING VIDEO DATA WITH RESTRICTED BLOCK SIZE IN VIDEO CODING
CN113810697A (zh) * 2016-04-29 2021-12-17 世宗大学校产学协力团 用于对图像信号进行编码和解码的方法和装置
US20170374369A1 (en) 2016-06-24 2017-12-28 Mediatek Inc. Methods and Apparatuses of Decoder Side Intra Mode Derivation

Also Published As

Publication number Publication date
JP2023082179A (ja) 2023-06-13
CA3048115A1 (en) 2018-07-12
JP2020503785A (ja) 2020-01-30
CN110140356B (zh) 2023-10-27
US11044467B2 (en) 2021-06-22
FI20175006A1 (en) 2019-02-15
RU2732996C1 (ru) 2020-09-28
EP3566450A1 (en) 2019-11-13
CA3048115C (en) 2021-11-09
AU2017391028B2 (en) 2022-05-12
KR102360648B1 (ko) 2022-02-09
EP4383704A2 (en) 2024-06-12
PH12019501445A1 (en) 2020-02-10
EP4093028A1 (en) 2022-11-23
JP2021184606A (ja) 2021-12-02
US20190356909A1 (en) 2019-11-21
ZA201904958B (en) 2021-02-24
WO2018127624A1 (en) 2018-07-12
CA3131100A1 (en) 2018-07-12
KR102301656B1 (ko) 2021-09-15
FI20175006A (fi) 2018-07-04
KR20210116673A (ko) 2021-09-27
KR20190102251A (ko) 2019-09-03
EP3566450A4 (en) 2020-08-26
CN110140356A (zh) 2019-08-16
AU2017391028A1 (en) 2019-07-18
JP6913755B2 (ja) 2021-08-04
CN117640953A (zh) 2024-03-01
JP7258958B2 (ja) 2023-04-17

Similar Documents

Publication Publication Date Title
BR112019013797A2 (pt) codificação de imagem e vídeo com predição intra de ângulo amplo
CN116723315B (zh) 视频解码的方法和装置、视频编码的方法和装置及存储介质
JP6378433B2 (ja) イントラbcとインター予測の統合のためのamvpおよびマージ候補リスト導出
BR112021000352A2 (pt) Combinação de intrapredição dependente de posição com intrapredição de ângulo amplo
CN114651447B (zh) 视频编解码的方法、装置及存储介质
BR112017020102B1 (pt) Processo de amostragem descendente para modo de previsão de modelo linear
CN113612995B (zh) 视频编码方法、解码方法、编码器、解码器和存储介质
BR112016024233B1 (pt) Método e aparelho para codificar uma imagem de camada de aperfeiçoamento em um fluxo de bits de múltiplas camadas
BR112015007116B1 (pt) Aparelho configurado para decodificar e codificar dados de vídeo, método de decodificação e codificação de dados de vídeo, e, memória legível por computador
JP6430394B2 (ja) 高効率ビデオコード化に基づくビデオ情報のスケーラブルコード化のための機器及び方法
JP2016508011A (ja) ビデオ情報のスケーラブルコード化のための機器及び方法
US20210377528A1 (en) Video block partition based on quinary-tree
BR112021004124A2 (pt) método de decodificação de vídeo e decodificador de vídeo
BR112015020968B1 (pt) Graduação de vetor de movimento espacial para codificação de vídeo escalonável
BR112021005238A2 (pt) um método e um aparelho para codificação e decodificação de material de imagem/vídeo digital
BR112021003946A2 (pt) codificador de vídeo, decodificador de vídeo e métodos correspondentes
CN112425165A (zh) 基于邻块的帧内预测模式推导
WO2020002762A1 (en) Method and apparatus for motion compensation with non-square sub-blocks in video coding
CN118354068A (zh) 视频编解码方法和设备
BR112016001121B1 (pt) Dispositivo e método para codificação escalável de informações de vídeo e memória legível por computador

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]
B06W Patent application suspended after preliminary examination (for patents with searches from other patent authorities) chapter 6.23 patent gazette]