BR112020008896A2 - filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo - Google Patents

filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo Download PDF

Info

Publication number
BR112020008896A2
BR112020008896A2 BR112020008896-0A BR112020008896A BR112020008896A2 BR 112020008896 A2 BR112020008896 A2 BR 112020008896A2 BR 112020008896 A BR112020008896 A BR 112020008896A BR 112020008896 A2 BR112020008896 A2 BR 112020008896A2
Authority
BR
Brazil
Prior art keywords
current
pixel
full
integer
pixels
Prior art date
Application number
BR112020008896-0A
Other languages
English (en)
Inventor
Maxim Borisovitch Sychev
Original Assignee
Huawei Technologies Co., Ltd.
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 Huawei Technologies Co., Ltd. filed Critical Huawei Technologies Co., Ltd.
Publication of BR112020008896A2 publication Critical patent/BR112020008896A2/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/132Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/117Filters, e.g. for pre-processing or post-processing
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/136Incoming video signal characteristics or properties
    • H04N19/137Motion inside a coding unit, e.g. average field, frame or block difference
    • 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/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/523Motion estimation or motion compensation with sub-pixel accuracy
    • 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/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/537Motion estimation other than block-based
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/59Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/80Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation

Landscapes

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

Abstract

a invenção refere-se a um aparelho (144) e método para interpredição de um valor de amostra de um pixel completo inteiro atual de uma pluralidade de píxeis de um bloco atual de um quadro atual de um sinal de vídeo. o aparelho (144) compreende uma unidade de processamento configurada para: determinar um vetor de movimento do pixel completo inteiro atual com base no quadro atual e em um quadro de referência do sinal de vídeo e/ou um modelo de compensação de movimento; determinar para o pixel completo inteiro atual um correspondente pixel subinteiro no quadro de referência com base no vetor de movimento do pixel completo inteiro atual; gerar com base em um conjunto predefinido de píxeis de suporte de filtro no quadro atual um conjunto de correspondentes píxeis de suporte de filtro no quadro de referência, em que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis subinteiros contíguos ao pixel completo inteiro atual; determinar um respectivo valor de amostra, do correspondente pixel subinteiro do pixel completo inteiro atual e dos correspondentes píxeis de suporte de filtro no quadro de referência; e determinar o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência. além disso, a invenção refere-se a um aparelho de codificação (100) e a um aparelho de decodificação que compreendem um tal aparelho de interpredição (144).

Description

FILTRO DE INTERPOLAÇÃO PARA UM APARELHO E MÉTODO DE INTERPREDIÇÃO PARA CODIFICAÇÃO DE VÍDEO CAMPO TÉCNICO
[001] De modo geral, a presente invenção refere-se ao campo de codificação de vídeo. Mais especificamente, a invenção refere-se a um filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo assim como a um aparelho de codificação e a um aparelho de decodificação compreendendo tal aparelho de predição.
ANTECEDENTES
[002] Aplicações digitais de comunicação e armazenamento de vídeo são implementadas por uma ampla faixa de dispositivos digitais, por exemplo câmeras digitais, telefones de rádio celular, computadores portáteis, sistemas de radiodifusão, sistemas de teleconferência por vídeo, etc. Uma das tarefas mais importantes e desafiadoras destas aplicações é a compressão de vídeo. A tarefa de compressão de vídeo é complexa e restringida por dois parâmetros contraditórios: eficiência de compressão e complexidade computacional. Padrões de codificação de vídeo, tais como ITU-T H.264/AVC ou ITU-T H.265/HEVC, propiciam uma boa troca entre estes parâmetros. Por essa razão o suporte de padrões de codificação de vídeo é um requisito obrigatório para quase todas as aplicações de compressão de vídeo.
[003] Padrões de codificação de vídeo do estado da técnica são baseados na divisão de um quadro ou figura fonte em blocos de quadros ou figuras. O processamento destes blocos depende do tamanho dos mesmos, posição espacial e modo de codificação especificado por um codificador.
Modos de codificação podem ser classificados em dois grupos de acordo com o tipo de predição: modos de intrapredição e interpredição.
Modos de intrapredição utilizam píxeis do mesmo quadro (também chamados de figura ou imagem) para gerar amostras de referência para calcular os valores de predição para os píxeis do bloco sendo reconstruído.
A intrapredição é também chamada de predição espacial.
Modos de interpredição são projetados para predição temporal e utilizam amostras de referência de quadros anteriores ou posteriores para predição de píxeis do bloco do quadro atual.
Após um estágio de predição, é realizada uma codificação de transformação para um erro de predição que é a diferença entre um sinal original e a sua predição.
Em seguida, os coeficientes de transformação e informações correlatas são codificados utilizando um codificador de entropia (por exemplo, CABAC para AVC/264 e HEVC/H.265). O padrão ITU-TH.265/HEVC recentemente adotado (ISO/IEC 23008-2:2013, "Tecnologia de informação - Codificação de alta eficiência e entrega de mídia em ambientes heterogêneos - Parte 2: Codificação de vídeo de alta eficiência”, novembro de 2013) declara um conjunto de ferramentas de codificação de vídeo do estado da técnica que propicia uma troca razoável entre eficiência de codificação e complexidade computacional.
Uma visão geral sobre o padrão ITU-T H.265/HEVC foi dada por Gary O.
Sullivan, “Visão geral do Padrão da Codificação de Vídeo de Alta Eficiência (HEVC)”, em IEEE Transações em Circuitos e Sistemas para Tecnologia de Vídeo, Vol. 22, No. 12, dezembro de 2012, cujo conteúdo inteiro está incorporado neste documento mediante referência.
[004] De modo similar ao padrão de codificação de vídeo ITU-T H.264/AVC, o padrão de codificação de vídeo HEVC/H.265 fornece uma divisão do quadro fonte em blocos de quadros na forma de denominadas unidades de codificação (CUs). Cada uma das CUs pode ser adicionalmente dividida em outras CUs menores ou unidades de predição (PUs). Uma PU pode ser intrapredita ou interpredita de acordo com o tipo de processamento aplicado aos píxeis de PU. Em caso de interpredição, uma PU representa uma área de píxeis que é processada por compensação de movimento utilizando um vetor de movimento especificado para uma PU. Para intrapredição, os píxeis adjacentes de blocos contíguos são utilizados como amostras de referência para predição de um bloco comum. Uma PU especifica um modo de predição que é selecionado a partir do conjunto de modos de intrapredição para todas as unidades de transformação (TUs) contidas nesta PU. Uma TU pode ter diferentes tamanhos (por exemplo, 4x4, 8x8, l6x16 e 32x32 píxeis) e pode ser processada de diferentes modos. Para uma TU, é executada codificação de transformação, isto é, o erro de predição é transformado com uma transformada discreta de cossenos ou uma transformada discreta de senos (no padrão HEVC/H.265, é aplicada a blocos intracodificados) e quantizados. Portanto, píxeis reconstruídos contêm ruído de quantização (pode tornar-se aparente, para exemplos como obstrução entre unidades, distorções aneladas junto a bordas afiadas, etc.) que filtros de malha fechada tais como Filtro de Desbloqueio (DBF), Deslocamento Adaptativo de Amostra (SAO) e Filtro Adaptativo de Malha Fechada (ALF) tentam suprimir.
[005] Têm sido desenvolvidas técnicas de interpolação de píxeis subinteiros com a finalidade de melhorar a precisão de predição para um nível de compressão que possa ser obtido para interpredição. Neste caso, os dados preditivos gerados durante compensação de movimento, que é usada para codificar um bloco de vídeo, pode corresponder a píxeis subinteiros, cujos valores podem ser interpolados de valores para píxeis completos de blocos de vídeo de um quadro de vídeo de referência ou de outra unidade codificada à qual um vetor de movimento se refere. O codificador de vídeo pode calcular valores para posições de píxeis subinteiros usando técnicas de interpolação, por exemplo, pela aplicação de filtros de interpolação a um conjunto de píxeis de suporte, por exemplo, valores para píxeis completos inteiros e/ou valores previamente codificados de outras posições de píxeis subinteiros.
[006] Os padrões atuais H.264/AVC e H.265/HEVC são baseados em uma resolução de deslocamento de 4 pel. O grupo de Equipe Conjunta de Exploração de Vídeo (JVET) está explorando tecnologias de compressão de vídeo pós-HEVC, incluindo modelos de compensação de movimento não- translacional, tais como transformações afins. Com a finalidade de estimar e compensar os deslocamentos fracionais-pel (ou subinteiros), os píxeis completos inteiros da imagem de referência têm que ser interpolados nas posições fracionais-pel, isto é, subinteiras. Para obter a imagem interpolada nas posições fracionais-pel são usados filtros de interpolação. O problema de interpolação para os modelos de movimento não-translacional são os deslocamentos fracionais-pel variáveis.
[007] A qualidade da imagem interpolada depende fortemente das propriedades do (s) filtro(s) de interpolação. Filtros de derivações curtas (por exemplo, bilineares) podem suprimir altas frequências e tornar a figura interpolada borrada. Por outro lado, filtros de derivações longas (por exemplo, baseados em sinc necessitam de mais largura de banda de memória e podem preservar altas frequências, mas geram algumas distorções aneladas na vizinhança de bordas afiadas. Outra consideração é que para compensação de movimento de modelos não-translacionais a complexidade foi reduzida pela diminuição da precisão de interpolação e predição.
[008] No modelo de movimento afim proposto por JEM existem dois tipos de movimento suportado: zoom e rotação. A maioria das posições fracionais-pel não é constante dentro de uma unidade de predição. Píxeis são substituídos por sub-blocos para acelerar a interpolação. Dentro de um sub-bloco o vetor de deslocamento é constante e translacional. A complexidade foi reduzida gradualmente, mas a precisão foi também reduzida. Para melhorar a qualidade de predição, a precisão de compensação de movimento foi melhorada pelo aumento da precisão do deslocamento do vetor de movimento para sub-blocos com aumento da quantidade de filtros de interpolação. A precisão atual da filtragem de interpolação para modelo de movimento não-translacional ainda necessita ser melhorada.
[009] Portanto, existe uma necessidade de um filtro de interpolação aperfeiçoado para um aparelho e método de interpredição para codificação de vídeo que propicie uma eficiência de codificação de vídeo aperfeiçoada.
SUMÁRIO
[0010] É um objetivo da invenção fornecer um filtro de interpolação aperfeiçoado para um aparelho e método de interpredição para codificação de vídeo que propicie uma eficiência de codificação de vídeo aperfeiçoada.
[0011] Os objetivos acima mencionados e outros são obtidos pelo assunto das reivindicações independentes. Formas de implementação adicionais são evidentes a partir das reivindicações dependentes, da descrição e das figuras.
[0012] De acordo com um primeiro aspecto a invenção refere-se a um aparelho para interpredição de um valor de amostra de um pixel completo inteiro atual de uma pluralidade de píxeis de um bloco atual de um quadro atual de um sinal de vídeo. O aparelho compreende uma unidade de processamento configurada para: determinar um vetor de movimento do pixel completo inteiro atual com base no quadro atual e em um quadro de referência do sinal de vídeo e/ou um modelo de compensação de movimento; determinar para o pixel completo inteiro atual um correspondente pixel subinteiro no quadro de referência com base no vetor de movimento do pixel completo inteiro atual; gerar com base em um conjunto predefinido de píxeis de suporte de filtro no quadro atual um conjunto de correspondentes píxeis de suporte de filtro no quadro de referência, em que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis subinteiros contíguos ao pixel completo inteiro atual; determinar um respectivo valor de amostra, em particular valor de luminância, do correspondente pixel subinteiro do pixel completo inteiro atual e os correspondentes píxeis de suporte de filtro no quadro de referência; e determinar o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência.
[0013] Portanto, é fornecido um aparelho de interpredição aperfeiçoado que permite melhorar a eficiência para codificação de vídeo.
[0014] Em uma outra forma de possível implementação do primeiro aspecto, o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis meio-inteiros contíguos verticalmente e/ou horizontalmente ao pixel completo inteiro atual no quadro atual.
[0015] Em uma outra forma de possível implementação do primeiro aspecto, o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis completos inteiros contíguos verticalmente e/ou horizontalmente ao pixel completo inteiro atual no quadro atual.
[0016] Em uma outra forma de possível implementação do primeiro aspecto, o filtro passa-alto espacial é um filtro de 5 derivações. Em uma forma de implementação, O filtro de 5 derivações é um filtro simétrico, isto é, um filtro onde o primeiro e o quinto coeficientes de filtro são idênticos e o segundo e o quarto coeficientes de filtro são idênticos. Em uma forma de implementação, o primeiro e o quinto coeficientes de filtro são negativos, enquanto os outros coeficientes de filtro do filtro de 5 derivações são positivos.
[0017] Em uma outra forma de possível implementação do primeiro aspecto, a unidade de processamento do aparelho é configurada para determinar os respectivos valores de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e dos correspondentes píxeis de suporte de filtro no quadro de referência com base em uma interpolação bilinear dos respectivos píxeis completos inteiros contíguos ao quadro de referência.
[0018] Em uma outra forma de possível implementação do primeiro aspecto, a unidade de processamento do aparelho é ainda configurada para determinar um respectivo vetor de movimento de cada um dos píxeis subinteiros dos píxeis de suporte de filtro no quadro atual com base no vetor de movimento do pixel completo inteiro atual e em um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual.
[0019] Em uma outra forma de possível implementação do primeiro aspecto, a unidade de processamento do aparelho é configurada para determinar um respectivo vetor de movimento de cada um dos píxeis subinteiros dos píxeis de suporte de filtro no quadro atual pela determinação de um vetor médio do vetor de movimento do pixel completo inteiro atual e um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual.
[0020] Em uma outra forma de possível implementação do primeiro aspecto, a unidade de processamento do aparelho é ainda configurada para determinar o um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual com base no quadro atual e no quadro de referência do sinal de vídeo e/ou um modelo de compensação de vídeo.
[0021] Em uma outra forma de possível implementação do primeiro aspecto, a unidade de processamento do aparelho é configurada para determinar o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência, no caso do vetor de movimento do pixel completo inteiro atual ser determinado com base em um modelo de compensação de movimento não-translacional, e para determinar o valor de amostra interpredito do pixel atual no quadro atual com base em um esquema convencional, tal como o esquema convencional definido em H.264/AVC e H.265/HEVC, no caso do vetor de movimento do pixel completo inteiro atual ser determinado com base em um modelo de compensação de movimento translacional.
[0022] Em uma outra forma de possível implementação do primeiro aspecto, o modelo de compensação de movimento não-translacional é um modelo afim de compensação de movimento panorâmico e/ou de deformação.
[0023] De acordo com um segundo aspecto, a invenção refere-se a um método correspondente para interpredição de um valor de amostra de um pixel completo inteiro atual de uma pluralidade de píxeis de um bloco atual de um quadro atual de um sinal de vídeo. O método compreende as etapas de: determinar um vetor de movimento do pixel completo inteiro atual com base no quadro atual e em um quadro de referência do sinal de vídeo e/ou com base em um modelo de compensação de movimento; determinar para o pixel completo inteiro atual um correspondente pixel subinteiro no quadro de referência com base no vetor de movimento do pixel completo inteiro atual; gerar com base em um conjunto predefinido de píxeis de suporte de filtro no quadro atual um conjunto de correspondentes píxeis de suporte de filtro no quadro de referência, em que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis subinteiros contíguos ao pixel completo inteiro atual; determinar um respectivo valor de amostra, em particular valor de luminância, do correspondente pixel subinteiro do pixel completo inteiro atual e os correspondentes píxeis de suporte de filtro no quadro de referência; e determinar o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência.
[0024] Portanto, é fornecido um método de interpredição aperfeiçoado que permite melhorar a eficiência para codificação de vídeo.
[0025] O método de interpredição de acordo com o segundo aspecto da invenção pode ser executado pelo aparelho de interpredição de acordo com o primeiro aspecto da invenção. Recursos adicionais do método de interpredição de acordo com o segundo aspecto da invenção resultam diretamente da funcionalidade do aparelho de interpredição de acordo com o primeiro aspecto da invenção e suas diferentes formas de implementação descritas acima e abaixo.
[0026] De acordo com um terceiro aspecto, a invenção refere-se a um aparelho de codificação para codificar um quadro atual de um sinal de vídeo, em que o aparelho de codificação compreende um aparelho de interpredição de acordo com o primeiro aspecto.
[0027] De acordo com um quarto aspecto, a invenção refere-se a um aparelho de decodificação para decodificar um quadro reconstruído atual de um sinal de vídeo comprimido, em que o aparelho de decodificação compreende um aparelho de interpredição de acordo com o primeiro aspecto.
[0028] De acordo com um quinto aspecto, a invenção refere-se a um produto de programa de computador que compreende código de programa para executar o método de acordo com o segundo aspecto quando executado em um computador ou um processador.
[0029] Modalidades da invenção fornecem em particular as vantagens a seguir. Modalidades da invenção permitem execução de interpolação com precisão em píxeis enquanto mantendo a complexidade em um nível baixo. Modalidades da invenção suportam "qualquer tipo de movimentos —“não-translacionais. Modalidades da invenção permitem a remoção de distorções de bloqueio através de bordas de sub-blocos. Modalidades da invenção reduzem a largura de banda de memória. Modalidades da invenção reduzem requisitos de memória para armazenamento de um conjunto de coeficientes de filtro. Modalidades da invenção permitem “reutilização bem otimizada na transformação bilinear HW. Modalidades da invenção alinham a orientação de filtragem ao longo da transformação. Modalidades da invenção permitem reduzir distorções aneladas provocadas por filtro de interpolação de movimento longo enquanto melhorando a qualidade de bordas interpoladas. Modalidades da invenção permitem aumentar a qualidade subjetiva de bordas em figuras reconstruídas. Além disso, modalidades da invenção não necessitam de qualquer sinalização adicional e, portanto, podem perfeitamente substituir métodos de interpolação existentes para movimentos não-translacionais. A divisão da interpolação em duas etapas permite a separação da compensação de deslocamento fracionário da filtragem passa-alto.
DESCRIÇÃO RESUMIDA DOS DESENHOS
[0030] Modalidades adicionais da invenção serão descritas em relação às figuras a seguir, em que: a Figura 1 ilustra esquematicamente um exemplo de um aparelho de codificação de acordo com uma modalidade que compreende um aparelho de interpredição de acordo com uma modalidade; a Figura 2 ilustra esquematicamente um exemplo de um aparelho de decodificação de acordo com uma modalidade que compreende um aparelho de interpredição de acordo com uma modalidade; a Figura 3 ilustra esquematicamente um aspecto de um processo de interpolação implementado em um aparelho de interpredição de acordo com uma modalidade; a Figura 4 ilustra esquematicamente diferentes aspectos de um processo de interpolação implementado em um aparelho de interpredição de acordo com uma modalidade; a Figura 5 ilustra esquematicamente diferentes aspectos de um processo de interpolação implementado em um aparelho de interpredição de acordo com uma modalidade; e a Figura 6 mostra um fluxograma que ilustra etapas de um método de interpredição de acordo com uma modalidade.
[0031] Nas diversas figuras, sinais de referência idênticos serão usados para recursos idênticos ou funcionalmente equivalentes.
DESCRIÇÃO DETALHADA DE MODALIDADES
[0032] Na descrição a seguir, é feita referência aos desenhos anexos, que formam parte da divulgação, e nos quais são mostrados, como ilustração, aspectos específicos nos quais a invenção pode ser colocada. É entendido que outros aspectos podem ser utilizados e que podem ser feitas alterações estruturais ou lógicas sem divergir do âmbito da invenção. A descrição detalhada a seguir, portanto, não deve ser considerada em um sentido limitante, uma vez que o âmbito da invenção é definido pelas reivindicações anexas.
[0033] Por exemplo, é entendido que uma divulgação em conexão com o método descrito pode também ser verdadeira para um dispositivo ou sistema correspondente configurado para executar o método e vice-versa. Por exemplo, se é descrita uma etapa de método específica, um dispositivo correspondente pode incluir uma unidade para executar a etapa de método descrita, mesmo se tal unidade não for explicitamente descrita ou ilustrada nas figuras. Além disso, é entendido que os recursos dos diversos aspectos exemplificativos descritos neste documento podem ser combinados entre si, a não ser que especificamente mencionado de outro modo.
[0034] A Figura 1 mostra um aparelho de codificação 100 de acordo com uma modalidade que compreende um aparelho de interpredição 144 de acordo com uma modalidade. O aparelho de codificação 100 é configurado para codificar um bloco de um quadro de um sinal de vídeo que compreende uma pluralidade de quadros (também referidos como figuras ou imagens neste documento), em que cada quadro é divisível em uma pluralidade de blocos e cada bloco compreende uma pluralidade de píxeis. Em uma modalidade, os blocos podem ser macroblocos, unidades de árvore de codificação, unidades de codificação, unidades de predição e/ou blocos de predição.
[0035] Na modalidade exemplificativa mostrada na Figura 1, o aparelho de codificação 100 é implementado na forma de um codificador híbrido de codificação de vídeo. Geralmente, o primeiro quadro de um sinal de vídeo é um intraquadro, que é codificado usando apenas intrapredição. Para este fim, a modalidade do aparelho de codificação 100 mostrado na Figura 2 compreende ainda uma unidade de intrapredição 154 para intrapredição. Um intraquadro pode ser decodificado sem informação dos outros quadros. A unidade de intrapredição 154 pode executar a intrapredição de um bloco com base na informação fornecida pela unidade de intraestimação 152.
[0036] Os blocos de quadros subsequentes a seguir ao primeiro intraquadro pode ser codificado usando interpredição ou intrapredição, conforme selecionado por uma unidade de seleção de modo 160. Geralmente, a unidade de interpredição 144 pode ser configurada para executar compensação de movimento de um bloco baseada na estimação de movimento, como será descrito em maior detalhe mais adiante. Em uma modalidade, a estimação de movimento pode ser executada por uma unidade de interestimação 142 do aparelho de codificação. Contudo, em outras modalidades, a funcionalidade da unidade de interestimação 142 pode ser implementada também como parte da unidade de interpredição
144.
[0037] Além disso, na modalidade de codificador híbrido mostrado na Figura l1, uma unidade de cálculo residual 104 determina a diferença entre o bloco original e sua predição, isto é, o bloco residual definindo o erro de predição da intrapredição/interpredição de figura. Este bloco residual é transformado pela unidade de transformação 106 (por exemplo usando uma DCT) e os coeficientes de transformação são quantizados pela unidade de quantização
108. A saída da unidade de quantização 108 assim como a informação de codificação ou correlata fornecida, por exemplo, pela unidade de interpredição 144 são adicionalmente codificadas por uma unidade de codificação de entropia 170.
[0038] Um codificador híbrido de vídeo, tal como o aparelho de codificação 100 mostrado na Figura 1, geralmente duplica o processamento de decodificador de modo que ambos gerarão as mesmas predições. Portanto, na modalidade mostrada na Figura 1, a unidade de quantização inversa 110 e a unidade de transformação inversa executam as operações inversas da unidade de transformação 106 e da unidade de quantização 108 e duplicam a aproximação decodificada do bloco residual. Os dados do bloco residual decodificado são em seguida adicionados aos resultados da predição, isto é, ao bloco de predição, pela unidade de reconstrução 114. Em seguida, a saída da unidade de reconstrução 114 pode ser fornecida a um buffer de linha 116 para ser usada para intrapredição e é ainda processada por um filtro de malha fechada 120 para remoção de distorções de imagem. A figura final é armazenada em um buffer de figuras decodificadas 130 e pode ser usada como um quadro de referência para a interpredição de quadros subsequentes.
[0039] A Figura 2 mostra um aparelho de decodificação 200 de acordo com uma modalidade que compreende um aparelho de interpredição 244 de acordo com uma modalidade. O aparelho de decodificação 200 é configurado para decodificar um bloco de um quadro de um sinal de vídeo codificado. Na modalidade mostrada na Figura 2, o aparelho de decodificação 200 é implementado como um decodificador híbrido. Uma unidade de decodificação de entropia 204 executa decodificação de entropia dos dados de figura codificada, que geralmente pode compreender erros de predição (isto é, blocos residuais), dados de movimento e outras informações correlatas, que são necessárias, em particular, para o aparelho de interpredição 244 e uma unidade de intrapredição 254 assim como outros componentes do aparelho de decodificação 200. Na modalidade mostrada na Figura 2, o aparelho de interpredição 244 ou a unidade de intrapredição 254 do aparelho de decodificação 200 mostrado na Figura 3 são selecionados por uma unidade de seleção de modo 260 e funcionam do mesmo modo que o aparelho de interpredição 144 e a unidade de intrapredição 154 do aparelho de codificação 100 mostrado na Figura l1, de modo que predições idênticas podem ser geradas pelo aparelho de codificação 100 e pelo aparelho de decodificação 200. Uma unidade de reconstrução 214 do aparelho de decodificação 200 é configurada para reconstruir o bloco com base no bloco predito filtrado e no bloco residual fornecido pela unidade de quantização inversa 210 e pela unidade de transformação inversa 212. Como no caso do aparelho de codificação 100, o bloco reconstruído pode ser fornecido a um buffer de linha 216 usado para intrapredição e o bloco/quadro filtrado pode ser fornecido a um buffer de figuras decodificadas 230 pelo filtro de malha fechada 220 para interpredições futuras.
[0040] Como já descrito acima, o aparelho 144, 244 é configurado para executar uma interpredição de um valor de amostra de um pixel completo inteiro atual de uma pluralidade de píxeis de um bloco atual de um quadro atual de um sinal de vídeo. O aparelho 144, 244 compreende uma unidade de processamento, que pode ser implementada em software e/ou hardware.
[0041] A unidade de processamento do aparelho 144 244 é configurada para determinar um vetor de movimento do pixel completo inteiro atual. Em uma modalidade, a unidade de processamento do aparelho 144, 244 é configurada para determinar o vetor de movimento do pixel completo inteiro atual com base no quadro atual e em um quadro de referência do sinal de vídeo pela determinação da posição do pixel no quadro de referência correspondente ao pixel completo inteiro atual no quadro atual. Em uma modalidade, a unidade de processamento do aparelho 144, 244 é configurada para determinar o vetor de movimento do pixel completo inteiro atual com base em um modelo adotado de compensação de movimento. Por exemplo, no caso de um modelo translacional ou afim de compensação de movimento, o vetor de movimento do pixel completo inteiro atual pode ser determinado usando um ou mais vetores de movimento de píxeis do mesmo bloco a que o pixel completo inteiro atual pertence. Como usado neste documento, “modelo de compensação de movimento” é também “referido como um modelo de transformação de movimento, descrição de modelo de movimento e similares.
[0042] A unidade de processamento do aparelho 144, 244 é ainda configurada para determinar, para o pixel completo inteiro atual, o correspondente pixel subinteiro no quadro de referência com base no vetor de movimento do pixel completo inteiro atual.
[0043] A unidade de processamento do aparelho 144, 244 é ainda configurada para gerar, com base em um conjunto predefinido de píxeis de suporte de filtro no quadro atual, um conjunto de correspondentes píxeis de suporte de filtro no quadro de referência. O conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis subinteiros contíguos ao pixel completo inteiro atual.
[0044] Em uma modalidade, o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis meio-inteiros contíguos verticalmente e/ou horizontalmente ao pixel completo inteiro atual no quadro atual. Por exemplo, em uma modalidade, o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende os píxeis meio-inteiros contíguos acima, à esquerda, abaixo e à direita do pixel completo inteiro atual.
[0045] Em uma modalidade, o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende ainda um ou mais píxeis completos inteiros contíguos verticalmente e/ou horizontalmente ao pixel completo inteiro atual no quadro atual. Por exemplo, em uma modalidade, o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende ainda os píxeis meio- inteiros contíguos acima, à esquerda, abaixo e à direita do pixel completo inteiro atual. Portanto, em uma modalidade, o conjunto predefinido de píxeis de suporte de filtro no quadro atual pode compreender os píxeis meio-inteiros e completos inteiros contíguos acima, à esquerda, abaixo e à direita do pixel completo inteiro atual no quadro atual.
[0046] A unidade de processamento do aparelho 144, 244 é ainda configurada para determinar um respectivo valor de amostra, em particular um valor de luminância do correspondente pixel subinteiro do pixel completo inteiro atual e os correspondentes píxeis de suporte de filtro no quadro de referência.
[0047] Em uma modalidade, a unidade de processamento do aparelho 144, 244 é configurada para determinar os respectivos valores de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e os correspondentes píxeis de suporte de filtro no quadro de referência com base em uma interpolação bilinear dos respectivos píxeis completos inteiros contíguos no quadro de referência. A Figura 3 ilustra um exemplo de utilização de interpolação bilinear para determinar o valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência. Na Figura 3, um bloco de referência no quadro de referência é ampliado e girado em relação a um bloco atual que compreende um pixel atual exemplificativo do quadro atual. Além disso, a Figura 3 ilustra a resolução aumentada usada para os píxeis de suporte de filtro.
[0048] Como pode ser considerado a partir da vista ampliada na Figura 3, em uma modalidade o valor de amostra L do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência pode ser determinado pela unidade de processamento como segue. O correspondente pixel subinteiro do pixel completo inteiro atual tem a posição fracionária (fdX, fdyY) em uma correspondente célula da grade de amostras do quadro de referência. LO, Ll, L2, L3 são os valores de amostra conhecidos dos Ppíxeis completos inteiros contíguos no quadro de referência (isto é, os píxeis completos inteiros localizados nos cantos da célula correspondente da grade de amostras do quadro de referência no qual o correspondente pixel subinteiro do pixel completo inteiro atual está localizado). Com base na posição fracionária (fdX, fdY) as respectivas áreas dos retângulos correspondentes a s0, sl, s2, s3 podem ser calculadas como segue: sO0 = fdX'fdY, sl = (1-fdX)*fdY, s2 = fdX'(1-fdY), s3 = (1-fdX)*'(1-fdY). A interpolação bilinear pode ser expressa usando um filtro de 2 derivações com os seguintes coeficientes horizontais (1-fdXx, fdx) e os seguintes coeficientes verticais (1-fdY, fdY). Com base nestes fatores ponderados o valor de amostra L do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência pode ser determinado com base na seguinte equação: L = LO0's3 + Ll1*s2 + L2'sl + L3's0. Como já mencionado acima, a mesma interpolação bilinear pode ser usada para determinar os valores de amostra para os correspondentes píxeis de suporte de filtro no quadro de referência.
[0049] A unidade de processamento do aparelho 144 244 é ainda configurada para determinar um valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência.
[0050] Em uma modalidade, o filtro passa-alto espacial é um filtro de 5 derivações. Em uma modalidade, o filtro de 5 derivações é um filtro simétrico, isto é, um filtro onde o primeiro e o quinto coeficientes de filtro são idênticos e o segundo e o quarto coeficientes de filtro são idênticos. Em uma modalidade, o primeiro e o quinto coeficientes de filtro são negativos, enquanto os outros coeficientes de filtro do filtro de 5 derivações são positivos. Em uma modalidade, o filtro passa-alto espacial pode ser aplicado separadamente na direção vertical e na direção horizontal.
[0051] A Figura 4 ilustra diferentes estágios da unidade de processamento executados pela unidade de processamento do aparelho 144, 244 usando um filtro de 5 derivações na direção vertical e na direção horizontal para o exemplo mostrado na Figura 3. Como no exemplo mostrado na Figura 3, o bloco de referência é ampliado e girado (correspondente a uma transformação afim) em relação ao bloco atual, os filtros de 5 derivações, que são verticais e horizontais no quadro atual, são girados no quadro de referência.
[0052] Nas modalidades adicionais a seguir do aparelho de interpredição 144, 244, serão descritos o aparelho de codificação 100 e o aparelho de decodificação
200. Neste contexto será entendido que modalidades do aparelho de interpredição 144, 244 se referem às modalidades do aparelho de interpredição 133 como implementado no aparelho de codificação 100 assim como às modalidades do aparelho de interpredição 244 como implementado no aparelho de decodificação 200.
[0053] Em uma modalidade, a unidade de processamento do aparelho 144, 244 é ainda configurada para determinar um respectivo vetor de movimento de cada um dos píxeis subinteiros dos píxeis de suporte de filtro no quadro atual com base no vetor de movimento do pixel completo inteiro atual e em um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual. Para este fim, em uma modalidade, a unidade de processamento do aparelho 144, 244 é configurada para determinar um valor médio do vetor de movimento do pixel completo inteiro atual e um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual. Por exemplo, para determinar o vetor de movimento do pixel meio-inteiro acima do pixel completo inteiro atual no quadro atual a unidade de processamento do aparelho 144, 244 pode computar a média, isto é, média de vetor de movimento do pixel completo inteiro atual e do vetor de movimento do pixel completo inteiro contíguo acima do pixel completo inteiro atual.
[0054] Similar à determinação do vetor de movimento do pixel atual, a unidade de processamento do aparelho 144, 244 pode ser configurado para determinar o um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual com base no quadro atual e no quadro de referência do sinal de vídeo e/ou um modelo de compensação de movimento.
[0055] Em uma modalidade, a unidade de processamento do aparelho 144, 244 é configurada para determinar o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência, no caso do vetor de movimento do pixel completo inteiro atual ser determinado com base em um modelo de compensação de movimento não-translacional, e para determinar o valor de amostra interpredito do pixel atual no quadro atual com base em um esquema convencional, tal como o esquema convencional definido em H.264/AVC e H.265/HEVC, no caso do vetor de movimento do pixel completo inteiro atual ser determinado com base em um modelo de compensação de movimento translacional. Em uma modalidade, o modelo de compensação de movimento não-translacional é um modelo afim de compensação de movimento panorâmico e/ou de deformação.
[0056] A Figura 5 resume diversos aspectos de modalidades da invenção descrita acima.
[0057] A Figura 6 mostra um diagrama que ilustra etapas de um correspondente método de interpredição 600 de acordo com uma modalidade. O método 600 compreende as seguintes etapas: determinar 601 um vetor de movimento do pixel completo inteiro atual com base no quadro atual e em um quadro de referência do sinal de vídeo e/ou com base em um modelo de compensação de movimento; determinar 603 para o pixel completo inteiro atual um correspondente pixel subinteiro no quadro de referência com base no vetor de movimento do pixel completo inteiro atual; gerar 605 com base em um conjunto predefinido de píxeis de suporte de filtro no quadro atual um conjunto de correspondentes píxeis de suporte de filtro no quadro de referência, em que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis subinteiros contíguos ao pixel completo inteiro atual; determinar 607 um respectivo valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual e os correspondentes píxeis de suporte de filtro no quadro de referência; e determinar 609 o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência.
[0058] A unidade de processamento pode ser qualquer tipo de circuito programável e não-programável que seja configurado para executar as respectivas operações descritas acima. A unidade de processamento pode compreender hardware assim como software. Por exemplo, a unidade de processamento pode compreender um ou mais processadores e uma memória transitória ou não-transitória que transporte um programa que faz com que a unidade de processamento execute as respectivas operações quando o programa é executado pelo um ou mais processadores.
[0059] Embora um recurso ou aspecto específico da divulgação tenha sido divulgado em relação a apenas uma das diversas implementações ou modalidades, tal recurso Ou aspecto pode ser combinado com um ou mais outros recursos ou aspectos das outras implementações ou modalidades como possa ser desejado e vantajoso para qualquer determinada ou específica aplicação. Além disso, na medida em que os termos “inclui”, “tem”, “com”, ou outras variantes destes são usados tanto na descrição detalhada como nas reivindicações, tais termos destinam-se a ser inclusivos em um modo similar ao termo “compreende”. Além disso, os termos “exemplar” e “por exemplo” significam apenas um exemplo, ao invés de melhor ou ótimo. Os termos “acoplado” e “conectado”, junto com seus derivados podem ter sido usados. Deverá ser entendido que estes termos podem ter sido usados para indicar que dois elementos cooperam ou interagem entre si independentemente de estarem em contato direto físico ou elétrico, ou não estarem em contato direto entre si.
[0060] Embora aspectos específicos tenham sido ilustrados e descritos neste documento, será entendido por aqueles versados na técnica que uma variedade de implementações alternativas e/ou equivalentes podem substituir os aspectos específicos mostrados e descritos sem divergirem do âmbito da presente divulgação. Este pedido de patente destina-se a cobrir quaisquer adaptações ou variações de aspectos específicos discutidos neste documento.
[0061] Embora os elementos nas reivindicações a seguir sejam mencionadas em uma sequência específica com correspondente rotulação, a não ser que as recitações reivindicadas impliquem de outro modo uma sequência específica para implementar alguns ou todos os elementos, aqueles elementos não necessariamente se destinam a ser limitados a serem implementados naquela sequência específica.
[0062] Muitas alternativas, modificações e variações serão evidentes para aqueles versados na técnica à luz dos ensinamentos acima. Evidentemente, aqueles versados na técnica reconhecerão facilmente que existem numerosas aplicações da invenção para além daquelas descritas neste documento. Embora a invenção tenha sido descrita com referência a uma ou mais modalidades específicas, aqueles versados na técnica reconhecem que muitas alterações podem ser feitas naquelas sem divergir do âmbito da invenção. Deve, portanto, ser entendido que dentro do âmbito das reivindicações anexas e suas equivalentes, a invenção pode ser praticada de modo diferente daqueles especificamente descritos neste documento.

Claims (14)

REIVINDICAÇÕES
1. Aparelho (144, 244) para interpredição de um valor de amostra de um pixel completo inteiro atual de uma pluralidade de píxeis de um bloco atual de um quadro atual de um sinal de vídeo, caracterizado pelo fato de que o aparelho (144, 244) compreende uma unidade de processamento configurada para: determinar um vetor de movimento do pixel completo inteiro atual com base no quadro atual e em um quadro de referência do sinal de vídeo e/ou um modelo de compensação de movimento; determinar para o pixel completo inteiro atual um correspondente pixel subinteiro no quadro de referência com base no vetor de movimento do pixel completo inteiro atual; gerar com base em um conjunto predefinido de píxeis de suporte de filtro no quadro atual um conjunto de correspondentes píxeis de suporte de filtro no quadro de referência, em que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis subinteiros contíguos ao pixel completo inteiro atual; determinar um respectivo valor de amostra, do correspondente pixel subinteiro do pixel completo inteiro atual e dos correspondentes píxeis de suporte de filtro no quadro de referência; e determinar o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa- alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência.
2. Aparelho (144, 244) de acordo com a reivindicação 1, caracterizado pelo fato de que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis meio-inteiros contíguos verticalmente e/ou horizontalmente ao pixel completo inteiro atual no quadro atual.
3. Aparelho (144, 244) de acordo com a reivindicação 1 ou 2, caracterizado pelo fato de que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis completos inteiros contíguos verticalmente e/ou horizontalmente ao pixel completo inteiro atual no quadro atual.
4, Aparelho (144, 244) de acordo com qualquer uma das reivindicações precedentes, caracterizado pelo fato de que o filtro passa-alto espacial é um filtro de 5 derivações.
5. Aparelho (144, 244) de acordo com qualquer uma das reivindicações precedentes, caracterizado pelo fato de que a unidade de processamento do aparelho (144, 244) é configurada para determinar os respectivos valores de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e dos correspondentes píxeis de suporte de filtro no quadro de referência com base em uma interpolação bilinear dos respectivos píxeis completos inteiros contíguos ao quadro de referência.
6. Aparelho (144, 244) de acordo com qualquer uma das reivindicações precedentes, caracterizado pelo fato de que a unidade de processamento do aparelho (144, 244) é ainda configurada para determinar um respectivo vetor de movimento de cada um dos píxeis subinteiros dos píxeis de suporte de filtro no quadro atual com base no vetor de movimento do pixel completo inteiro atual e em um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual.
7. Aparelho (144, 244) de acordo com a reivindicação 6, caracterizado pelo fato de que a unidade de processamento do aparelho (144, 244) é configurada para determinar um respectivo vetor de movimento de cada um dos píxeis subinteiros dos píxeis de suporte de filtro no quadro atual pela determinação de um vetor médio do vetor de movimento do pixel completo inteiro atual e um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual.
8. Aparelho (144, 244) de acordo com a reivindicação 6 ou 7, caracterizado pelo fato de que a unidade de processamento do aparelho (144, 244) é ainda configurada para determinar o um ou mais vetores de movimento de píxeis completos inteiros contíguos ao pixel completo inteiro atual com base no quadro atual e no quadro de referência do sinal de vídeo e/ou um modelo de compensação de vídeo.
9. Aparelho (144, 244) de acordo com qualquer uma das reivindicações precedentes, caracterizado pelo fato de que a unidade de processamento do aparelho (144, 244) é configurada para determinar o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência, no caso do vetor de movimento do pixel completo inteiro atual ser determinado com base em um modelo de compensação de movimento não-translacional, e para determinar o valor de amostra interpredito do pixel atual no quadro atual com base em um esquema convencional, no caso do vetor de movimento do pixel completo inteiro atual ser determinado com base em um modelo de compensação de movimento translacional.
10. Aparelho (144, 244) de acordo com a reivindicação 9, caracterizado pelo fato de que o modelo de compensação de movimento não-translacional é um modelo afim de compensação de movimento panorâmico e/ou de deformação.
11. Método (600) para interpredição de um valor de amostra de um pixel completo inteiro atual de uma pluralidade de píxeis de um bloco atual de um quadro atual de um sinal de vídeo, caracterizado pelo fato de que o método (600) compreende: determinar (601) um vetor de movimento do pixel completo inteiro atual com base no quadro atual e em um quadro de referência do sinal de vídeo e/ou com base em um modelo de compensação de movimento; determinar (603) para o pixel completo inteiro atual um correspondente pixel subinteiro no quadro de referência com base no vetor de movimento do pixel completo inteiro atual; gerar (605) com base em um conjunto predefinido de píxeis de suporte de filtro no quadro atual um conjunto de correspondentes píxeis de suporte de filtro no quadro de referência, em que o conjunto predefinido de píxeis de suporte de filtro no quadro atual compreende um ou mais píxeis subinteiros contíguos ao pixel completo inteiro atual; determinar (607) um respectivo valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual e os correspondentes píxeis de suporte de filtro no quadro de referência; e determinar (609) o valor de amostra interpredito do pixel atual no quadro atual pela aplicação de um filtro passa-alto espacial ao valor de amostra do correspondente pixel subinteiro do pixel completo inteiro atual no quadro de referência e aos valores de amostra dos correspondentes píxeis de suporte de filtro no quadro de referência.
12. Aparelho de codificação (100) para codificar um quadro atual de um sinal de vídeo, caracterizado pelo fato de que o aparelho de codificação (100) compreende um aparelho de interpredição (144) conforme definido em qualquer uma das reivindicações 1 a 10.
13. Aparelho de decodificação (200) para decodificar um quadro reconstruído atual de um sinal de vídeo comprimido, caracterizado pelo fato de que o aparelho de decodificação (200) compreende um aparelho de interpredição (244) conforme definido em qualquer uma das reivindicações 1 a10.
14. Produto de programa de computador, caracterizado pelo fato de que compreende um código de programa para executar o método conforme definido na reivindicação 11, quando executado em um computador ou em um processador.
BR112020008896-0A 2017-11-07 2017-11-07 filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo BR112020008896A2 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/RU2017/000830 WO2019093916A1 (en) 2017-11-07 2017-11-07 Interpolation filter for an inter prediction apparatus and method for video coding

Publications (1)

Publication Number Publication Date
BR112020008896A2 true BR112020008896A2 (pt) 2020-10-20

Family

ID=60629774

Family Applications (2)

Application Number Title Priority Date Filing Date
BR112020008896-0A BR112020008896A2 (pt) 2017-11-07 2017-11-07 filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo
BR112020009019-0A BR112020009019A2 (pt) 2017-11-07 2018-03-06 aparelho de interpredição, método e produto de programa de computador para codificação de vídeo

Family Applications After (1)

Application Number Title Priority Date Filing Date
BR112020009019-0A BR112020009019A2 (pt) 2017-11-07 2018-03-06 aparelho de interpredição, método e produto de programa de computador para codificação de vídeo

Country Status (8)

Country Link
US (2) US11375199B2 (pt)
EP (2) EP3688987A1 (pt)
JP (2) JP7005854B2 (pt)
KR (2) KR102357142B1 (pt)
CN (2) CN111201791B (pt)
BR (2) BR112020008896A2 (pt)
SG (2) SG11202003260WA (pt)
WO (2) WO2019093916A1 (pt)

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
BR112020008896A2 (pt) 2017-11-07 2020-10-20 Huawei Technologies Co., Ltd. filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo
BR112020019740A2 (pt) 2018-03-29 2021-02-17 Huawei Technologies Co., Ltd. aparelho e método de processamento de imagem
US11356707B2 (en) * 2019-09-23 2022-06-07 Qualcomm Incorporated Signaling filters for video processing
CN114503559B (zh) * 2019-09-30 2023-10-20 华为技术有限公司 用于视频译码中的帧间预测装置和方法的插值滤波器
WO2021129627A1 (en) * 2019-12-27 2021-07-01 Zhejiang Dahua Technology Co., Ltd. Affine prediction method and related devices
CN114342390B (zh) * 2020-07-30 2022-10-28 北京达佳互联信息技术有限公司 用于仿射运动补偿的预测细化的方法和装置
CN116171576A (zh) * 2020-08-06 2023-05-26 北京达佳互联信息技术有限公司 用于仿射运动补偿预测细化的方法和装置
CN113259669B (zh) * 2021-03-25 2023-07-07 浙江大华技术股份有限公司 编码方法、装置、电子设备及计算机可读存储介质

Family Cites Families (49)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1274254B1 (en) 1995-08-29 2011-07-06 Sharp Kabushiki Kaisha Video coding device and video decoding device with a motion compensated interframe prediction
US20030222998A1 (en) * 2000-12-20 2003-12-04 Satoru Yamauchi Digital still camera system and method
US20030179827A1 (en) * 2002-03-19 2003-09-25 Kenji Sugiyama Video emphasis encoding method and apparatus, video de-emphasis decoding method and apparatus, video emphasis transmitting method and apparatus and video de-emphasis receiving method and apparatus
US7782951B2 (en) 2004-05-13 2010-08-24 Ittiam Systems (P) Ltd. Fast motion-estimation scheme
US7792192B2 (en) 2004-11-19 2010-09-07 Analog Devices, Inc. System and method for sub-pixel interpolation in motion vector estimation
US8208564B2 (en) 2005-06-24 2012-06-26 Ntt Docomo, Inc. Method and apparatus for video encoding and decoding using adaptive interpolation
EP1841230A1 (en) 2006-03-27 2007-10-03 Matsushita Electric Industrial Co., Ltd. Adaptive wiener filter for video coding
US8208553B2 (en) * 2006-05-04 2012-06-26 Altera Corporation Methods and apparatus for quarter-pel refinement in a SIMD array processor
WO2008084378A2 (en) 2007-01-09 2008-07-17 Nokia Corporation Adaptive interpolation filters for video coding
US9967590B2 (en) * 2008-04-10 2018-05-08 Qualcomm Incorporated Rate-distortion defined interpolation for video coding based on fixed filter or adaptive filter
US8971412B2 (en) * 2008-04-10 2015-03-03 Qualcomm Incorporated Advanced interpolation techniques for motion compensation in video coding
US9077971B2 (en) * 2008-04-10 2015-07-07 Qualcomm Incorporated Interpolation-like filtering of integer-pixel positions in video coding
US8831086B2 (en) * 2008-04-10 2014-09-09 Qualcomm Incorporated Prediction techniques for interpolation in video coding
US20090257499A1 (en) * 2008-04-10 2009-10-15 Qualcomm Incorporated Advanced interpolation techniques for motion compensation in video coding
US8705622B2 (en) * 2008-04-10 2014-04-22 Qualcomm Incorporated Interpolation filter support for sub-pixel resolution in video coding
US8462842B2 (en) * 2008-04-10 2013-06-11 Qualcomm, Incorporated Symmetry for interpolation filtering of sub-pixel positions in video coding
US8804831B2 (en) * 2008-04-10 2014-08-12 Qualcomm Incorporated Offsets at sub-pixel resolution
US8750378B2 (en) * 2008-09-23 2014-06-10 Qualcomm Incorporated Offset calculation in switched interpolation filters
JP5446198B2 (ja) * 2008-10-03 2014-03-19 富士通株式会社 画像予測装置及び方法、画像符号化装置、画像復号化装置
US8542732B1 (en) 2008-12-23 2013-09-24 Elemental Technologies, Inc. Video encoder using GPU
EP2360925A1 (en) 2010-01-20 2011-08-24 Siemens Aktiengesellschaft Method for reducing noise for coding of noisy images or image sequences
KR101682147B1 (ko) 2010-04-05 2016-12-05 삼성전자주식회사 변환 및 역변환에 기초한 보간 방법 및 장치
US9094658B2 (en) 2010-05-10 2015-07-28 Mediatek Inc. Method and apparatus of adaptive loop filtering
CN105049844B (zh) * 2010-09-30 2017-07-28 三星电子株式会社 通过使用平滑插值滤波器对图像进行插值的方法和装置
US20120134425A1 (en) * 2010-11-29 2012-05-31 Faouzi Kossentini Method and System for Adaptive Interpolation in Digital Video Coding
KR102696949B1 (ko) * 2010-12-08 2024-08-20 엘지전자 주식회사 인트라 예측 방법과 이를 이용한 부호화 장치 및 복호화 장치
US10045046B2 (en) * 2010-12-10 2018-08-07 Qualcomm Incorporated Adaptive support for interpolating values of sub-pixels for video coding
US9172972B2 (en) * 2011-01-05 2015-10-27 Qualcomm Incorporated Low complexity interpolation filtering with adaptive tap size
US20120177104A1 (en) 2011-01-12 2012-07-12 Madhukar Budagavi Reduced Complexity Adaptive Loop Filter (ALF) for Video Coding
RU2595262C2 (ru) * 2011-06-28 2016-08-27 Самсунг Электроникс Ко., Лтд. Способ для интерполяции изображений с использованием асимметричного интерполяционного фильтра и устройство для этого
NO335667B1 (no) 2011-06-29 2015-01-19 Cisco Systems Int Sarl Metode for videokomprimering
US9055304B2 (en) * 2011-07-01 2015-06-09 Qualcomm Incorporated Reduced resolution pixel interpolation
US9699452B2 (en) * 2011-09-15 2017-07-04 Vid Scale, Inc Systems and methods for spatial prediction
US9357235B2 (en) 2011-10-13 2016-05-31 Qualcomm Incorporated Sample adaptive offset merged with adaptive loop filter in video coding
US9445088B2 (en) 2012-04-09 2016-09-13 Qualcomm Incorporated LCU-based adaptive loop filtering for video coding
US9906804B2 (en) * 2014-01-16 2018-02-27 Qualcomm Incorporated Reference layer sample position derivation for scalable video coding
US11122262B2 (en) 2014-06-27 2021-09-14 Samsung Electronics Co., Ltd. System and method for motion compensation in video coding
CN104363451B (zh) * 2014-10-27 2019-01-25 华为技术有限公司 图像预测方法及相关装置
US10104361B2 (en) * 2014-11-14 2018-10-16 Samsung Electronics Co., Ltd. Coding of 360 degree videos using region adaptive smoothing
CN106331722B (zh) * 2015-07-03 2019-04-26 华为技术有限公司 图像预测方法和相关设备
WO2017052409A1 (en) * 2015-09-25 2017-03-30 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation with selectable interpolation filter
CN108141603B (zh) * 2015-09-25 2020-12-15 华为技术有限公司 视频编解码方法及视频编解码器
EP3354027A1 (en) * 2015-09-25 2018-08-01 Huawei Technologies Co., Ltd. Apparatus and method for video motion compensation
CA3005417A1 (en) * 2015-11-17 2017-05-26 Huawei Technologies Co., Ltd. Method and apparatus for video coding
FR3044449B1 (fr) 2015-12-01 2017-11-24 E2V Semiconductors Procede de traitement de signaux issus d'une matrice de prise d'images en couleur, et capteur correspondant
WO2017123487A1 (en) * 2016-01-15 2017-07-20 Vid Scale, Inc. System and method for enhanced motion compensation using adaptive filtering
US11563938B2 (en) * 2016-02-15 2023-01-24 Qualcomm Incorporated Geometric transforms for filters for video coding
US10382781B2 (en) * 2016-09-28 2019-08-13 Qualcomm Incorporated Interpolation filters for intra prediction in video coding
BR112020008896A2 (pt) 2017-11-07 2020-10-20 Huawei Technologies Co., Ltd. filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo

Also Published As

Publication number Publication date
KR102359415B1 (ko) 2022-02-08
BR112020009019A2 (pt) 2020-12-01
CN111213380B (zh) 2022-10-28
US20200244965A1 (en) 2020-07-30
US20200267407A1 (en) 2020-08-20
WO2019093922A1 (en) 2019-05-16
US11297324B2 (en) 2022-04-05
KR20200055139A (ko) 2020-05-20
EP3688988A1 (en) 2020-08-05
SG11202003298YA (en) 2020-05-28
EP3688987A1 (en) 2020-08-05
SG11202003260WA (en) 2020-05-28
CN111201791B (zh) 2022-05-24
JP2021502031A (ja) 2021-01-21
WO2019093916A1 (en) 2019-05-16
KR20200057088A (ko) 2020-05-25
CN111213380A (zh) 2020-05-29
JP2021502013A (ja) 2021-01-21
JP7005854B2 (ja) 2022-01-24
US11375199B2 (en) 2022-06-28
CN111201791A (zh) 2020-05-26
KR102357142B1 (ko) 2022-02-08
JP6989699B2 (ja) 2022-01-05

Similar Documents

Publication Publication Date Title
BR112020008896A2 (pt) filtro de interpolação para um aparelho e método de interpredição para codificação de vídeo
US11496732B2 (en) Video image encoding and decoding method, apparatus, and device
CN116980595A (zh) 基于调整的帧内模式列表以编码视频数据的设备及方法
US20190273920A1 (en) Apparatuses and Methods for Encoding and Decoding a Video Coding Block of a Video Signal
US11228780B2 (en) Inter prediction apparatus and method for video coding
KR102435316B1 (ko) 이미지 처리 장치 및 방법
JP7534395B2 (ja) インター予測装置用の補間フィルタおよびビデオコーディングのための方法
WO2016137369A1 (en) Encoding and decoding of pictures in a video

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]