BR112019005678B1 - Método e aparelho para codificação e decodificação de imagem através de interpredição - Google Patents

Método e aparelho para codificação e decodificação de imagem através de interpredição Download PDF

Info

Publication number
BR112019005678B1
BR112019005678B1 BR112019005678-5A BR112019005678A BR112019005678B1 BR 112019005678 B1 BR112019005678 B1 BR 112019005678B1 BR 112019005678 A BR112019005678 A BR 112019005678A BR 112019005678 B1 BR112019005678 B1 BR 112019005678B1
Authority
BR
Brazil
Prior art keywords
block
prediction
decoding
coding
prediction block
Prior art date
Application number
BR112019005678-5A
Other languages
English (en)
Other versions
BR112019005678A2 (pt
Inventor
Xu Chen
Jicheng An
Jianhua Zheng
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 BR112019005678A2 publication Critical patent/BR112019005678A2/pt
Publication of BR112019005678B1 publication Critical patent/BR112019005678B1/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/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
    • H04N19/139Analysis of motion vectors, e.g. their magnitude, direction, variance or reliability
    • 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/577Motion compensation with bidirectional frame interpolation, i.e. using B-pictures
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T9/00Image coding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/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/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/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/53Multi-resolution motion estimation; Hierarchical motion estimation
    • 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/533Motion estimation using multistep search, e.g. 2D-log search or one-at-a-time search [OTS]
    • 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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
    • H04N19/61Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding

Landscapes

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

Abstract

Um método e um aparelho para codificação e decodificação de imagem através de interprevisão são fornecidos. O método de decodificação inclui: determinar informações de movimento de previsão de um primeiro bloco de decodificação; desempenhar previsão bidirecional no primeiro bloco de decodificação com base nas informações de movimento de previsão para obter um primeiro bloco de previsão de decodificação; desempenhar busca de movimento de primeira precisão em um bloco de imagem de referência de previsão para obter pelo menos um segundo bloco de previsão de decodificação, onde uma localização de busca da busca de movimento é determinada usando-se um previsor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de previsão de decodificação e cada segundo bloco de previsão de decodificação para obter um previsor de vetor de movimento alvo do primeiro bloco de decodificação; e atualizar o previsor de vetor de movimento alvo através da busca de movimento. Portanto, a precisão de movimento de interprevisão é aperfeiçoada.

Description

CAMPO DA TÉCNICA
[001] A presente invenção faz referência ao campo das tecnologias de imagem de vídeo e, em particular, a um método e a um aparelho para codificação e decodificação de imagem através de interpredição.
FUNDAMENTOS
[002] Em uma armação de codificação e decodificação de vídeo, uma estrutura de codificação híbrida é normalmente usada para codificação e decodificação de sequência de vídeo. Um lado de codificador da estrutura de codificação híbrida normalmente inclui um módulo de predição, um módulo de transformação, um módulo de quantização, e um módulo de codificação de entropia. Um lado de decodificador da estrutura de codificação híbrida inclui normalmente um módulo de decodificação de entropia, um módulo de desquantização, um módulo de transformação inversa, e um módulo de compensação de predição. Esses módulos de codificação e decodificação podem ser combinados para remover eficazmente informações redundantes de uma sequência de vídeo e assegurar que uma imagem codificada da sequência de vídeo seja obtida no lado de decodificador.
[003] Em uma armação de codificação e decodificação de vídeo, uma imagem de uma sequência de vídeo é normalmente dividida em blocos de imagem para codificação. Uma imagem é dividida em diversos blocos de imagem, e esses blocos de imagem são codificados e decodificados usando-se os módulos supracitados.
[004] Nos módulos supracitados, o módulo de predição é configurado para obter informações de bloco de predição de um bloco de imagem de uma imagem codificada de uma sequência de vídeo no lado de codificador, de modo a determinar, com base em um modo específico, se um residual do bloco de imagem precisa ser obtido. O módulo de compensação de predição é configurado para obter informações de bloco de predição de um bloco de imagem decodificada atual no lado de decodificador, e então determinar, com base em um modo específico, se vai se obter ou não o bloco de imagem decodificada atual com base em um residual de bloco de imagem obtida através de decodificação. O módulo de predição e o módulo de compensação de predição normalmente incluem duas tecnologias: intrapredição e interpredição. Na tecnologia de interpredição, uma imagem que é adjacente a uma imagem atual e usada para interpredição é referida como uma imagem de referência.
[005] Na tecnologia de interpredição, para remover eficazmente informações redundantes de um bloco de imagem atual, um lado de codificador e um lado de decodificador precisam obter um bloco de imagem simétrico que seja mais similar ao bloco de imagem atual a partir da imagem de referência, de modo a reduzir um residual do bloco de imagem atual. Quando interpredição é desempenhada no bloco de imagem atual, a imagem de referência é buscada quanto a um bloco de imagem simétrico apropriado com base nas informações de movimento de predição. Neste caso, informações de vetor de movimento nas informações de movimento de predição são determinadas por informações de vetor de movimento de um bloco adjacente. Em outras palavras, todas as informações de uma imagem de referência anterior podem ser usadas para codificar e decodificar o bloco de imagem atual. Pode ser aprendido que, na codificação e decodificação de inter quadro, informações de vetor de movimento de um bloco adjacente são usadas diretamente como um preditor de vetor de movimento de um bloco atual. Esta maneira de obter diretamente um preditor de vetor de movimento de interpredição inevitavelmente causa um desvio de precisão de movimento de predição.
SUMÁRIO
[006] Modalidades da presente invenção fornecem um método e um aparelho para codificação e decodificação de imagem através de interpredição, de modo a aperfeiçoar a precisão de movimento de interpredição.
[007] De acordo com um primeiro aspecto, um método para codificação de imagem através de interpredição é fornecido, incluindo: determinar informações de movimento de predição de um primeiro bloco de codificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; desempenhar predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação, e obter um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de codificação, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação; desempenhar predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação; e obter um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, e codificar o primeiro bloco de codificação com base no bloco de predição de codificação alvo.
[008] O efeito benéfico reside em que quando se está codificando o primeiro bloco de codificação, um lado de codificador pode atualizar o preditor de vetor de movimento alvo através de busca de movimento, de modo a aperfeiçoar a precisão de movimento de interpredição.
[009] Com referência ao primeiro aspecto, em um projeto possível, as informações de movimento de predição incluem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição inclui um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
[010] Com referência ao primeiro aspecto, em um projeto possível, o bloco de predição de codificação inicial inclui um bloco de predição de codificação inicial antecipada e um bloco de predição de codificação inicial retroativa, e o desempenho de predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação inclui: desempenhar predição antecipada no primeiro bloco de codificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de codificação inicial retroativa do primeiro bloco de codificação.
[011] Com referência ao primeiro aspecto, em um projeto possível, a obtenção de um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial inclui a seguinte maneira: desempenhar somatório ponderado no bloco de predição de codificação inicial antecipada e no bloco de predição de codificação inicial retroativa para obter o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial antecipada como o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial retroativa como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
[012] O efeito benéfico reside em que depois de desempenhar predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição, o lado de codificador pode combinar o bloco de predição de codificação inicial antecipada e o bloco de predição de codificação inicial retroativa para obter o primeiro bloco de predição de codificação, ou pode obter o primeiro bloco de predição de codificação com base em um bloco de predição de codificação inicial em uma única direção. As implantações são diversificadas e podem ser selecionadas de maneira flexível com base em uma situação real.
[013] Com referência ao primeiro aspecto, em um projeto possível, o segundo bloco de predição de codificação inclui um segundo bloco de predição de codificação antecipada e um segundo bloco de predição de codificação retroativa, e o desempenho de busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de codificação inclui: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de codificação antecipada encontrado como o segundo bloco de predição de codificação antecipada para obter o pelo menos um segundo bloco de predição de codificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de codificação retroativa encontrado como o segundo bloco de predição de codificação retroativa para obter o pelo menos um segundo bloco de predição de codificação, onde a primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
[014] Com referência ao primeiro aspecto, em um projeto possível, o preditor de vetor de movimento alvo inclui um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e o cálculo de uma diferença entre o primeiro bloco de predição de codificação e cada segundo codificação bloco de predição, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação inclui: comparar diferenças entre os segundos blocos de predição de codificação antecipada e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; e/ou comparar diferenças entre os segundos blocos de predição de codificação retroativa e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
[015] O efeito benéfico reside em que diferenças entre segundos blocos de predição de codificação obtidos através de desempenho de busca de movimento no bloco de imagem de referência de predição e o primeiro bloco de predição de codificação são comparadas para atualizar o preditor de vetor de movimento alvo do primeiro bloco de codificação, aperfeiçoando assim a precisão de movimento de interpredição.
[016] Com referência ao primeiro aspecto, em um projeto possível, o terceiro bloco de predição de codificação do primeiro bloco de codificação inclui um terceiro bloco de predição de codificação antecipada e um terceiro bloco de predição de codificação retroativa, e o desempenho de predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação inclui: desempenhar predição antecipada no primeiro bloco de codificação com base no preditor de vetor de movimento de avanço para obter o terceiro bloco de predição de codificação antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de codificação retroativa do primeiro bloco de codificação.
[017] Com referência ao primeiro aspecto, em um projeto possível, a obtenção de um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação inclui: desempenhar somatório ponderado no terceiro bloco de predição de codificação antecipada e no terceiro bloco de predição de codificação retroativa para obter o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação antecipada como o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação retroativa como o bloco de predição de codificação alvo do primeiro bloco de codificação.
[018] O efeito benéfico reside em que depois de desempenhar predição bidirecional em um terceiro bloco de codificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de codificação, o lado de codificador pode combinar o terceiro bloco de predição de codificação antecipada e o terceiro bloco de predição de codificação retroativa para obter o bloco de predição de codificação alvo do primeiro bloco de codificação, ou pode obter o bloco de predição de codificação alvo do primeiro bloco de codificação com base em um terceiro bloco de predição de codificação em uma única direção. As implantações são diversificadas e podem ser selecionadas de maneira flexível com base em uma situação real.
[019] De acordo com um segundo aspecto, um método para decodificação de imagem através de interpredição é fornecido, incluindo: determinar informações de movimento de predição de um primeiro bloco de decodificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de referência de imagem de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; desempenhar predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação, e obter um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de decodificação, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação; desempenhar predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação; e obter um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, e decodificar o primeiro bloco de decodificação com base no bloco de predição de decodificação alvo.
[020] O efeito benéfico reside em que, quando se está codificando o primeiro bloco de decodificação, um lado de decodificador pode atualizar o preditor de vetor de movimento alvo através de busca de movimento, de modo a aperfeiçoar a precisão de movimento de interpredição.
[021] Com referência ao segundo aspecto, em um projeto possível, as informações de movimento de predição incluem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição inclui um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
[022] Com referência ao segundo aspecto, em um projeto possível, o bloco de predição de decodificação inicial inclui um bloco de predição de decodificação inicial antecipada e um bloco de predição de decodificação inicial retroativa, e o desempenho de predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação inclui: desempenhar predição antecipada no primeiro bloco de decodificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de decodificação inicial retroativa do primeiro bloco de decodificação.
[023] Com referência ao segundo aspecto, em um projeto possível, a obtenção de um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial inclui a seguinte maneira: desempenhar somatório ponderado no bloco de predição de decodificação inicial antecipada e no bloco de predição de decodificação inicial retroativa para obter o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial antecipada como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial retroativa como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
[024] O efeito benéfico reside em que depois de desempenhar predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição, o lado de decodificador pode combinar o bloco de predição de decodificação inicial antecipada e o bloco de predição de decodificação inicial retroativa para obter o primeiro bloco de predição de decodificação, ou pode obter o primeiro bloco de predição de decodificação com base em um bloco de predição de decodificação inicial em uma única direção. As implantações são diversificadas, e podem ser selecionadas de maneira flexível com base em uma situação real.
[025] Com referência ao segundo aspecto, em um possível projeto, o segundo bloco de predição de decodificação inclui um segundo bloco de predição de decodificação antecipada e um segundo bloco de predição de decodificação retroativa, e o desempenho de busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de decodificação inclui: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de decodificação antecipada encontrado como o segundo bloco de predição de decodificação antecipada para obter o pelo menos um segundo bloco de predição de decodificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de decodificação retroativa encontrado como o segundo bloco de predição de decodificação retroativa para obter o pelo menos um segundo bloco de predição de decodificação, onde a primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
[026] Com referência ao segundo aspecto, em um projeto possível, o preditor de vetor de movimento alvo inclui um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e o cálculo de uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação inclui: comparar diferenças entre os segundos blocos de predição de decodificação antecipada e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; e/ou comparar diferenças entre os segundos blocos de predição de decodificação retroativa e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
[027] O efeito benéfico reside em que diferenças entre os segundos blocos de predição de decodificação obtidas pelo desempenho de busca de movimento no bloco de imagem de referência de predição e no primeiro bloco de predição de decodificação são comparadas para atualizar o preditor de vetor de movimento alvo do primeiro bloco de decodificação, aperfeiçoando assim a precisão de movimento de interpredição.
[028] Com referência ao segundo aspecto, em um projeto possível, o terceiro bloco de predição de decodificação do primeiro bloco de decodificação inclui um terceiro bloco de predição de decodificação antecipada e um terceiro bloco de predição de decodificação retroativa, e o desempenho de predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação inclui: desempenhar predição antecipada no primeiro bloco de decodificação com base no preditor de vetor de movimento de avanço para obter o terceiro bloco de predição de decodificação antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de decodificação retroativa do primeiro bloco de decodificação.
[029] Com referência ao segundo aspecto, em um projeto possível, a obtenção de um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação inclui a seguinte maneira: desempenhar somatório ponderado no terceiro bloco de predição de decodificação antecipada e no terceiro bloco de predição de decodificação retroativa para obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação antecipada como o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação retroativa como o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
[030] O efeito benéfico reside em que depois de desempenhar predição bidirecional em um terceiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de decodificação, o lado de decodificador pode combinar o terceiro bloco de predição de decodificação antecipada e o terceiro bloco de predição de decodificação retroativa para obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação, ou pode obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação com base em um terceiro bloco de predição de decodificação em uma única direção. As implantações são diversificadas, e podem ser selecionadas de maneira flexível com base em uma situação real.
[031] De acordo com um terceiro aspecto, um aparelho para codificação de imagem através de interpredição é fornecido, incluindo: uma unidade de determinação, configurada para determinar informações de movimento de predição de um primeiro bloco de codificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; uma unidade de processamento, configurada para: desempenhar predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação, e obter um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de codificação, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação; e desempenhar predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação; e uma unidade de codificação, configurada para: obter um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, e codificar o primeiro bloco de codificação com base no bloco de predição de codificação alvo.
[032] Com referência ao terceiro aspecto, em um projeto possível, as informações de movimento de predição incluem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição inclui um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
[033] Com referência ao terceiro aspecto, em um projeto possível, o bloco de predição de codificação inicial inclui um bloco de predição de codificação inicial antecipada e um bloco de predição de codificação inicial retroativa, e quando está desempenhando predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter o bloco de predição de codificação inicial do primeiro bloco de codificação, a unidade de processamento é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de codificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de codificação inicial retroativa do primeiro bloco de codificação.
[034] Com referência ao terceiro aspecto, em um projeto possível, quando se está obtendo o primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial, a unidade de processamento é especificamente configurada para: desempenhar somatório ponderado no bloco de predição de codificação inicial antecipada e no bloco de predição de codificação inicial retroativa para obter o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial antecipada como o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial retroativa como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
[035] Com referência ao terceiro aspecto, em um possível projeto, o segundo bloco de predição de codificação inclui um segundo bloco de predição de codificação antecipada e um segundo bloco de predição de codificação retroativa, e quando está desempenhando busca de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter pelo menos um segundo bloco de predição de codificação, a unidade de processamento é especificamente configurada para: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de codificação antecipada encontrado como o segundo bloco de predição de codificação antecipada para obter o pelo menos um segundo bloco de predição de codificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de codificação retroativa encontrado como o segundo bloco de predição de codificação retroativa para obter o pelo menos um segundo bloco de predição de codificação, onde a primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
[036] Com referência ao terceiro aspecto, em um projeto possível, o preditor de vetor de movimento alvo inclui um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e quando se está calculando a diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usando o preditor de vetor de movimento entre o primeiro bloco de codificação e o segundo bloco de predição de codificação com uma menor diferença como o preditor de vetor de movimento alvo do primeiro bloco de codificação, a unidade de processamento é especificamente configurada para: comparar diferenças entre os segundos blocos de predição de codificação antecipada e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; ou comparar diferenças entre os segundos blocos de predição de codificação retroativa e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
[037] Com referência ao terceiro aspecto, em um projeto possível, o terceiro bloco de predição de codificação do primeiro bloco de codificação inclui um terceiro bloco de predição de codificação antecipada e um terceiro bloco de predição de codificação retroativa, e quando está desempenhando predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de codificação do primeiro bloco de codificação, a unidade de processamento é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de codificação com base no preditor de vetor de movimento de avanço para obter o terceiro bloco de predição de codificação antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de codificação retroativa do primeiro bloco de codificação.
[038] Com referência ao terceiro aspecto, em um projeto possível, quando se está obtendo o bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, a unidade de processamento é especificamente configurada para: desempenhar somatório ponderado no terceiro bloco de predição de codificação antecipada e no terceiro bloco de predição de codificação retroativa para obter o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação antecipada como o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação retroativa como o bloco de predição de codificação alvo do primeiro bloco de codificação.
[039] De acordo com um quarto aspecto, um aparelho para decodificação de imagem através de interpredição é fornecido, incluindo: uma unidade de determinação, configurada para determinar informações de movimento de predição de um primeiro bloco de decodificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; uma unidade de processamento, configurada para: desempenhar predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação, e obter um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de decodificação, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação; e desempenhar predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação; e uma unidade de decodificação, configurada para: obter um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, e decodificar o primeiro bloco de decodificação com base no bloco de predição de decodificação alvo.
[040] Com referência ao quarto aspecto, em um projeto possível, as informações de movimento de predição incluem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição inclui um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
[041] Com referência ao quarto aspecto, em um projeto possível, o bloco de predição de decodificação inicial inclui um bloco de predição de decodificação inicial antecipada e um bloco de predição de decodificação inicial retroativa, e quando se está desempenhando predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter o bloco de predição de decodificação inicial do primeiro bloco de decodificação, a unidade de processamento é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de decodificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de decodificação inicial retroativa do primeiro bloco de decodificação.
[042] Com referência ao quarto aspecto, em um projeto possível, quando se está obtendo o primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial, a unidade de processamento é especificamente configurada para: desempenhar somatório ponderado no bloco de predição de decodificação inicial antecipada e no bloco de predição de decodificação inicial retroativa para obter o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial antecipada como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial retroativa como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
[043] Com referência ao quarto aspecto, em um projeto possível, o segundo bloco de predição de decodificação inclui um segundo bloco de predição de decodificação antecipada e um segundo bloco de predição de decodificação retroativa, e quando se está desempenhando busca de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter o pelo menos um segundo bloco de predição de decodificação, a unidade de processamento é especificamente configurada para: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço e usar cada bloco de predição de decodificação antecipada encontrado como o segundo bloco de predição de decodificação antecipada para obter o pelo menos um segundo bloco de predição de decodificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de decodificação retroativa encontrado como o segundo bloco de predição de decodificação retroativa para obter o pelo menos um segundo bloco de predição de decodificação, onde a primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
[044] Com referência ao quarto aspecto, em um projeto possível, o preditor de vetor de movimento alvo inclui um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e quando se está calculando a diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usando o preditor de vetor de movimento entre o primeiro bloco de decodificação e o segundo bloco de predição de decodificação com uma menor diferença como o preditor de vetor de movimento alvo do primeiro bloco de decodificação, a unidade de processamento é especificamente configurada para: comparar diferenças entre os segundos blocos de predição de decodificação antecipada e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; ou comparar diferenças entre os segundos blocos de predição de decodificação retroativa e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
[045] Com referência ao quarto aspecto, em um projeto possível, o terceiro bloco de predição de decodificação do primeiro bloco de decodificação inclui um terceiro bloco de predição de decodificação antecipada e um terceiro bloco de predição de decodificação retroativa, e quando se está desempenhando predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de decodificação do primeiro bloco de decodificação, a unidade de processamento é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de decodificação com base no preditor de vetor de movimento de avanço alvo para obter o terceiro bloco de predição de decodificação antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de decodificação retroativa do primeiro bloco de decodificação.
[046] Com referência ao quarto aspecto, em um projeto possível, quando se está obtendo o bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, a unidade de processamento é especificamente configurada para: desempenhar somatório ponderado no terceiro bloco de predição de decodificação antecipada e no terceiro bloco de predição de decodificação retroativa para obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação antecipada como o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação retroativa como o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
[047] De acordo com um quinto aspecto, um dispositivo de codificação é fornecido, e o dispositivo inclui um processador e uma memória, onde a memória armazena um programa legível por computador, e o processador roda o programa na memória para implantar o método de codificação de acordo com o primeiro aspecto.
[048] De acordo com um sexto aspecto, um dispositivo de decodificação é fornecido, e o dispositivo inclui um processador e uma memória, onde a memória armazena um programa legível por computador, e o processador roda o programa na memória para implantar o método de decodificação de acordo com o segundo aspecto.
[049] De acordo com um sétimo aspecto, um meio de armazenamento de computador é fornecido, configurado para armazenar uma instrução de software de computador para o primeiro aspecto e o segundo aspecto, onde a instrução de software de computador inclui um programa projetado para desempenhar os aspectos precedentes.
[050] Deve ser entendido que o terceiro ao sétimo aspectos das modalidades da presente invenção são consistentes com as soluções técnicas do primeiro e do segundo aspectos das modalidades da presente invenção, e efeitos benéficos obtidos por todos os aspectos e pelas maneiras de projeto implantáveis correspondentes são similares. Detalhes não são descritos novamente.
BREVE DESCRIÇÃO DOS DESENHOS
[051] A Figura 1A e a Figura 1B são respectivamente diagramas esquemáticos de selecionamento de informações de movimento de predição de um bloco atual em um modo de mesclagem e em um modo de não mesclagem;
[052] A Figura 2 é um diagrama de blocos esquemático de um aparelho codec de vídeo ou de um dispositivo eletrônico;
[053] A Figura 3 é um diagrama de blocos esquemático de um sistema codec de vídeo;
[054] A Figura 4 é um fluxograma de um método para codificação de imagem através de interpredição de acordo com uma modalidade da presente invenção
[055] A Figura 5 é um fluxograma de um método para decodificação de imagem através de interpredição de acordo com uma modalidade da presente invenção
[056] A Figura 6A, a Figura 6B, a Figura 7, a Figura 8A, a Figura 8B, Figura 8C, a Figura 8D, a Figura 9A e a Figura 9B são diagramas esquemáticos de um processo para decodificação de imagem através de interpredição de acordo com uma modalidade da presente invenção;
[057] A Figura 10 é um diagrama estrutural de um aparelho para codificação de imagem através de interpredição de acordo com uma modalidade da presente invenção;
[058] A Figura 11 é um diagrama estrutural de um codificador de imagem usando interpredição de acordo com uma modalidade da presente invenção;
[059] A Figura 12 é um diagrama estrutural de um aparelho para decodificação de imagem através de interpredição de acordo com uma modalidade da presente invenção; e
[060] A Figura 13 é um diagrama estrutural de um decodificador de imagem usando interpredição de acordo com uma modalidade da presente invenção.
DESCRIÇÃO DE MODALIDADES
[061] A seguir se descreve clara e completamente as soluções técnicas nas modalidades da presente invenção com referência aos desenhos anexos nas modalidades da presente invenção. Evidentemente, as modalidades descritas são algumas e não todas as modalidades da presente invenção. Todas as outras modalidades obtidas por uma pessoa de habilidade comum na técnica com base nas modalidades da presente invenção sem esforços criativos estarão abrangidas pelo escopo de proteção da presente invenção.
[062] Uma tecnologia de interpredição é classificada em um modo de mesclagem (Merge) e um modo de não mesclagem, e o modo de não mesclagem é classificado adicionalmente em um modo de pular (SKIP) e um modo de não pular.
[063] No modo de não mesclagem e em um modo de não pular do modo de mesclagem na tecnologia de interpredição, informações redundantes de um bloco de imagem atual são removidas com base nas informações de pixel de uma imagem codificada ou decodificada adjacente a uma imagem atual para se obter um residual.
[064] Na tecnologia de interpredição, para remover eficazmente as informações redundantes do bloco de imagem atual, um lado de codificador ou um lado de decodificador precisa obter um bloco de imagem que seja mais similar ao bloco de imagem atual a partir de uma imagem de referência, de modo a reduzir um residual do bloco de imagem atual. O lado de codificador ou o lado de decodificador obtém normalmente um bloco de imagem da imagem de referência supracitada através da estimativa de movimento. Em uma tecnologia de codificação e decodificação de vídeo existente, uma imagem de referência é normalmente buscada quanto a um bloco de imagem simétrico apropriado em uma unidade de um bloco de imagem durante codificação e decodificação em um processo de estimativa de movimento. Em algumas modalidades, um bloco de imagem é uma unidade de predição de uma imagem a ser codificada por um lado de codificador ou uma unidade de predição de uma imagem a ser reconstruída por um lado de decodificador. Em algumas modalidades, um bloco de imagem é uma unidade de transformação de uma imagem a ser codificada pelo lado de codificador ou uma unidade de transformação de uma imagem a ser reconstruída pelo lado de decodificador. Em algumas modalidades, um bloco de imagem é uma unidade de codificação ou uma subunidade de codificação de uma imagem a ser codificada pelo lado de codificador, ou uma unidade de decodificação ou uma subunidade de decodificação de uma imagem a ser reconstruída pelo lado de decodificador. Nenhuma limitação é imposta.
[065] No modo de não mesclagem da tecnologia de interpredição, um codificador desempenha subtração em um valor de pixel correspondente a um bloco de imagem atual e um valor de pixel correspondente a um bloco de imagem simétrico para obter um residual, desempenha codificação de entropia em um valor obtido depois que o residual é transformado e quantizado e, finalmente, grava, em um fluxo de código, tanto um fluxo de bits obtido através de codificação de entropia quanto um deslocamento de movimento (a saber, uma diferença de vetor de movimento) obtidos através de busca. Correspondentemente, durante a compensação de predição (ou referida como compensação de movimento), um lado de decodificador desempenha primeiro codificação de entropia após obter um fluxo de bits de codificação de entropia, para obter um residual correspondente e uma diferença de vetor de movimento correspondente; então obtém um valor de vetor de movimento com base na diferença de vetor de movimento obtida e um valor de vetor de movimento de um bloco adjacente; obtém um bloco de imagem simétrico correspondente a partir de uma imagem de referência com base no valor de vetor de movimento; e adiciona um valor de pixel correspondente ao bloco de imagem simétrico e um valor de pixel correspondente ao residual para obter um valor do bloco de imagem atual decodificada.
[066] No modo de não pular do modo de mesclagem da tecnologia de interpredição, um lado de codificador desempenha subtração em um valor de pixel correspondente a um bloco de imagem atual e um valor de pixel correspondente a um bloco de imagem simétrico para obter um residual, desempenha codificação de entropia em um valor obtido após o residual ser transformado e quantizado, e finalmente grava um fluxo de bits obtido através de codificação de entropia em um fluxo de código. Correspondentemente, durante a compensação de predição (ou referida como compensação de movimento), um lado de decodificador primeiro desempenha codificação de entropia após obter um fluxo de bits de codificação de entropia, para obter um residual correspondente; obtém um bloco de imagem simétrico correspondente a partir de uma imagem de referência com base em um valor de vetor de movimento de um bloco adjacente; e adiciona um valor de pixel correspondente ao bloco de imagem simétrico e um valor de pixel correspondente ao residual para obter um valor do bloco de imagem atual decodificada.
[067] Em um modo de pular do modo de mesclagem da tecnologia de interpredição, para salvar uma taxa de bits, um residual e uma diferença de vetor de movimento não precisam ser obtidos. Em ambos os processos de codificação e decodificação, um bloco de imagem simétrico correspondente é obtido diretamente com base nas informações de movimento de um bloco adjacente e é usado como um valor de um bloco de imagem atual.
[068] Como mostrado na Figura 1A, em um modo de mesclagem, os blocos adjacentes são marcados com valores de índice diferentes, e os valores de índice são usados para determinar um bloco adjacente cujas informações de vetor de movimento são usadas por um bloco atual como informações de movimento de predição do bloco atual. Como mostrado na Figura 1B, em um modo de não mesclagem, uma lista de preditor de vetor de movimento é construída pela detecção de um bloco adjacente, e um preditor de vetor de movimento é selecionado a partir da lista de predição de vetor de movimento para um bloco atual como um preditor de vetor de movimento do bloco atual. Pode ser aprendido que, em codificação e decodificação inter quadro, informações de vetor de movimento de um bloco adjacente são usadas diretamente como um preditor de vetor de movimento de um bloco atual. Esta maneira de obter diretamente um preditor de vetor de movimento de interpredição inevitavelmente causa um desvio de precisão de movimento de predição.
[069] A Figura 2 é um diagrama de blocos esquemático de um aparelho codec de vídeo ou dispositivo eletrônico 50. O aparelho ou o dispositivo eletrônico pode ser incorporado em um codec de acordo com uma modalidade da presente invenção. A Figura 3 é um diagrama de aparelho esquemático de um sistema codec de vídeo de acordo com uma modalidade da presente invenção. A seguir se descreve as unidades na Figura 2 e na Figura 3
[070] O dispositivo eletrônico 50 pode ser, por exemplo, um terminal móvel ou equipamento de usuário em um sistema de comunicações sem fio. Deve ser entendido que as modalidades da presente invenção podem ser implantadas por qualquer dispositivo ou aparelho eletrônico que pode precisar codificar, ou decodificar, ou codificar e decodificar uma imagem de vídeo.
[071] O aparelho 50 pode incluir um alojamento configurado para ser incorporado no dispositivo e proteger o mesmo. O aparelho 50 pode adicionalmente incluir um mostrador 32 em uma forma de um mostrador de cristal líquido. Em outra modalidade da presente invenção, o mostrador pode ser qualquer tecnologia de exibição apropriada aplicada à exibição de imagem ou vídeo. O aparelho 50 pode adicionalmente incluir um teclado 34. Em outra modalidade da presente invenção, qualquer mecanismo apropriado de dados ou de interface de usuário pode ser usado. Por exemplo, uma interface de usuário pode ser implantada como um teclado virtual ou um sistema de entrada de dados para servir como uma parte de um mostrador sensível ao toque. O aparelho pode incluir um microfone 36 ou qualquer entrada de áudio apropriada, e a entrada de áudio pode ser entrada de sinal digital ou analógico. O aparelho 50 pode adicionalmente incluir o dispositivo de saída de áudio a seguir. Nesta modalidade da presente invenção, o dispositivo de saída de áudio pode ser qualquer um dentre um fone de ouvido 38, um alto-falante, uma conexão de saída de áudio analógica ou uma conexão de saída de áudio digital. O aparelho 50 pode também incluir uma bateria 40. Em outra modalidade da presente invenção, o dispositivo pode ser movido por qualquer dispositivo de energia móvel apropriado, tal como uma célula solar, uma célula de combustível, ou um gerador de mecanismo de relógio. O aparelho pode adicionalmente incluir uma porta de infravermelho 42 configurada para desempenhar comunicação de linha de visão de curto alcance com outro dispositivo. Em outra modalidade, o aparelho 50 pode adicionalmente incluir qualquer solução de comunicação de curto alcance apropriada, tal como uma conexão Bluetooth sem fio ou uma conexão com fio USB/linha direta.
[072] O aparelho 50 pode incluir um controlador 56 ou um processador configurado para controlar o aparelho 50. O controlador 56 pode ser conectado a uma memória 58. Nesta modalidade da presente invenção, a memória pode armazenar dados de imagem e dados de áudio, e/ou pode armazenar uma instrução implantada no controlador 56. O controlador 56 também pode ser conectado a um circuito codec 54 adaptado para implantar codificação e decodificação de dados de áudio e/ou vídeo, ou o controlador 56 é conectado a um circuito codec 54 para implantar codificação e decodificação auxiliar.
[073] O aparelho 50 pode adicionalmente incluir um leitor de cartão 48 e um cartão inteligente 46 que são configurados para fornecer informações de usuário e são adaptados para fornecer informações para autenticação de rede e autenticação de usuário autorizado.
[074] O aparelho 50 pode adicionalmente incluir um circuito de interface de rádio 52. O circuito de interface de rádio é conectado ao controlador e é adaptado para gerar, por exemplo, um sinal de comunicação sem fio usado para se comunicar com uma rede de comunicações celular, um sistema de comunicações sem fio, ou uma rede de área local sem fio. O aparelho 50 pode adicionalmente incluir uma antena 44. A antena está conectada ao circuito de interface de rádio 52 para enviar sinais de radiofrequência gerados no circuito de interface de rádio 52 para outros (uma pluralidade de) aparelhos e receber sinais de radiofrequência de outros (uma pluralidade de) aparelhos.
[075] Em algumas modalidades da presente invenção, o aparelho 50 inclui uma câmera que tem capacidade de gravar ou detectar um único quadro. O codec 54 ou o controlador recebe e processa esses únicos quadros. Em algumas modalidades da presente invenção, o aparelho pode receber dados de imagem de vídeo a serem processadas a partir de outro dispositivo antes de transmissão e/ou armazenamento. Em algumas modalidades da presente invenção, o aparelho 50 pode receber, através de uma conexão sem fio ou com fio, uma imagem para codificação/decodificação.
[076] A Figura 3 é um diagrama de blocos esquemático de outro sistema codec de vídeo 10 de acordo com uma modalidade da presente invenção. Como mostrado na Figura 3, o sistema codec de vídeo 10 inclui um aparelho de fonte 12 e um aparelho de destino 14. O aparelho de fonte 12 gera dados de vídeo codificados. Portanto, o aparelho de fonte 12 pode ser referido como um aparelho de codificação de vídeo ou um dispositivo de codificação de vídeo. O aparelho de destino 14 pode decodificar os dados de vídeo codificados gerados pelo aparelho de fonte 12. Portanto, o aparelho de destino 14 pode ser referido como um aparelho de decodificação de vídeo ou um dispositivo de decodificação de vídeo. O aparelho de fonte 12 e o aparelho de destino 14 podem ser casos de um aparelho codec de vídeo ou de um dispositivo codec de vídeo. O aparelho de fonte 12 e o aparelho de destino 14 podem incluir uma ampla faixa de aparelhos, incluindo um computador de mesa, um aparelho de computação móvel, um computador do tipo notebook (por exemplo, um laptop), um computador do tipo tablet, um conversor, um aparelho telefônico tal como um smartphone, uma televisão, uma câmera, um aparelho de exibição, um reprodutor de meios digitais, um console de videogame, um computador interno em veículo, ou outro aparelho similar.
[077] O aparelho de destino 14 pode receber os dados de vídeo codificados a partir do aparelho fonte 12 através de um canal 16. O canal 16 pode incluir um ou mais meios e/ou aparelhos que podem transmitir os dados de vídeo codificados do aparelho fonte 12 para o aparelho de destino 14. Em um caso, o canal 16 pode incluir um ou mais meios de comunicação que habilitam o aparelho de fonte 12 a transmitir diretamente os dados de vídeo codificados para o aparelho de destino 14 em tempo real. Neste caso, o aparelho de fonte 12 pode modular os dados de vídeo codificados de acordo com um padrão de comunicações (por exemplo, um protocolo de comunicação sem fio), e pode transmitir os dados de vídeo modulados para o aparelho de destino 14. O um ou mais meios de comunicação pode (m) incluir meios de comunicação sem fio e/ou com fio, tais como um espectro de radiofrequência (RF) ou uma ou mais linhas de transmissão física. O um ou mais meios de comunicação pode (m) formar uma parte de uma rede com base em pacote (por exemplo, uma rede de área local, uma rede de longa distância, ou uma rede global (por exemplo, a Internet)). O um ou mais meios de comunicações podem incluir um roteador, um comutador, uma estação base, ou outro dispositivo que facilita a comunicação do aparelho de fonte 12 para o aparelho de destino 14.
[078] Em outro caso, o canal 16 pode incluir um meio de armazenamento que armazena os dados de vídeo codificados gerados pelo aparelho de fonte 12. Neste caso, o aparelho de destino 14 pode acessar o meio de armazenamento através de acesso por disco ou acesso por cartão. O meio de armazenamento pode incluir vários meios de armazenamento de dados de acesso locais, tais como um Blu-ray, um DVD, um CD-ROM, uma memória flash, ou outros meios de armazenamento digital apropriados configurados para armazenar os dados de vídeo codificados.
[079] Em outro caso, o canal 16 pode incluir um servidor de arquivo ou outro aparelho de armazenamento intermediário que armazena os dados de vídeo codificados gerados pelo aparelho de fonte 12. Neste caso, o aparelho de destino 14 pode acessar, através de transmissão por streaming ou por download, os dados de vídeo codificados armazenados no servidor de arquivo ou no outro dispositivo de armazenamento intermediário. O servidor de arquivo pode ser de um tipo de servidor que pode armazenar dados de vídeo codificados e transmitir os dados de vídeo codificados para o aparelho de destino 14. O servidor de arquivo no caso inclui um servidor de rede (por exemplo, aplicado a um site de rede), um servidor de Protocolo de Transferência de Arquivo (FTP), um aparelho de armazenamento anexado à rede (NAS), e uma unidade de disco local.
[080] O aparelho de destino 14 pode acessar os dados de vídeo codificados através de uma conexão de dados padrão (por exemplo, uma conexão com a Internet). Um tipo de exemplo da conexão de dados inclui um canal de rádio (por exemplo, uma conexão Wi-Fi), uma conexão com fio (por exemplo, uma DSL ou um modem de cabo) ou uma combinação de ambos que são adaptados para acessar os dados de vídeo codificados armazenados no servidor de arquivo. A transmissão dos dados de vídeo codificados a partir do servidor de arquivo pode ser transmissão por streaming, transmissão por download ou uma combinação das mesmas.
[081] A tecnologia da presente invenção não é limitada a um cenário de aplicação sem fio. Por exemplo, a tecnologia pode ser usada para suportar codificação e decodificação de vídeo nos vários aplicativos multimídia seguintes: difusão de televisão por via aérea, transmissão de televisão a cabo, transmissão de televisão por satélite, transmissão de vídeo por streaming (por exemplo, pela Internet), codificação de dados de vídeo armazenados em meios de armazenamento de dados, decodificação de dados de vídeo armazenados em meios de armazenamento de dados, e outros aplicativos. Em alguns casos, o sistema codec de vídeo 10 pode ser configurado para suportar transmissão de vídeo unidirecional ou bidirecional, de modo a suportar aplicativos tais como transmissão de streaming de vídeo, reprodução de vídeo, difusão de vídeo e/ou telefonia com vídeo.
[082] No exemplo da Figura 3, o aparelho de fonte 12 inclui uma fonte de vídeo 18, um codificador de vídeo 20 e uma interface de saída 22. Em alguns casos, a interface de saída 22 pode incluir um modulador/demodulador (modem) e/ou um transmissor. A fonte de vídeo 18 pode incluir um aparelho de captura de vídeo (por exemplo, uma câmera de vídeo), um arquivo de vídeo incluindo dados de vídeo previamente capturados, uma interface de entrada de vídeo configurada para receber dados de vídeo a partir de um fornecedor de conteúdo de vídeo, e/ou um sistema de computação gráfica configurado para gerar dados de vídeo, ou uma combinação das fontes de dados de vídeo supracitadas.
[083] O codificador de vídeo 20 pode codificar dados de vídeo a partir da fonte de vídeo 18. Em alguns casos, o aparelho de fonte 12 transmite diretamente os dados de vídeo codificados para o aparelho de destino 14 usando-se a interface de saída 22. Os dados de vídeo codificados também podem ser armazenados no meio de armazenamento ou no servidor de arquivo para acesso posterior pelo aparelho de destino 14 para decodificação e/ou reprodução.
[084] No exemplo da Figura 3, o aparelho de destino 14 inclui uma interface de entrada 28, um decodificador de vídeo 30, e um aparelho mostrador 32. Em alguns casos, a interface de entrada 28 inclui um receptor e/ou um modem. A interface de entrada 28 pode receber os dados de vídeo codificados através do canal 16. O aparelho mostrador 32 pode ser integrado no aparelho de destino 14 ou pode estar localizado fora do aparelho de destino 14. Normalmente, o aparelho mostrador 32 exibe dados de vídeo decodificados. O aparelho mostrador 32 pode incluir vários aparelhos mostradores, tais como um mostrador de cristal líquido (LCD), um mostrador de plasma, um mostrador de diodo emissor de luz orgânico (OLED), ou outro tipo de aparelho mostrador.
[085] O codificador de vídeo 20 e o decodificador de vídeo 30 podem operar de acordo com um padrão de compressão de vídeo (por exemplo, o padrão H.265 de Codificação de Vídeo de Alta Eficiência) e podem estar em conformidade com um modelo de teste HEVC (HM). A descrição de texto ITU- TH.265 (V3) (04/2015) do padrão H.265 foi publicada em 29 de abril de 2015 e pode ser baixada de http://handle.itu.int/11.1002/1000/12455, e todo o conteúdo do arquivo é incorporado no presente documento a título de referência.
[086] Alternativamente, o codificador de vídeo 20 e o decodificador de vídeo 30 podem operar de acordo com outro padrão proprietário ou da indústria. O padrão inclui ITU-T H.261, ISO/IEC MPEG-1 Visual, o ITU-T H.262, o ISO/IEC MPEG-2 Visual, ITU-T H.263, ISO/IEC MPEG-4 Visual ou ITU -T H.264 (também referido como ISO/IEC MPEG-4 AVC), e inclui extensões de codificação de vídeo escalável (SVC) e codificação de vídeo multivisão (MVC). Deve ser entendido que a tecnologia da presente invenção não está limitada a qualquer padrão ou tecnologia codec específico.
[087] Além disso, a Figura 3 é meramente um exemplo, e a tecnologia da presente invenção pode ser aplicada a aplicações codec de vídeo (por exemplo, codificação de vídeo unilateral ou decodificação de vídeo) que não incluem necessariamente qualquer comunicação de dados entre um aparelho de codificação e um aparelho de decodificação. Em outro exemplo, os dados são recuperados a partir de uma memória local, e os dados são transmitidos por transmissão de streaming de rede, ou os dados são operados em uma maneira semelhante. O aparelho de codificação pode codificar dados e armazenar os dados na memória, e/ou o aparelho de decodificação pode recuperar dados da memória e decodificar os dados. Em muitos casos, codificação e decodificação são desempenhados por uma pluralidade de aparelhos que não se comunicam entre si, mas somente codificam dados para a memória e/ou recuperam dados da memória e decodificam os dados.
[088] O codificador de vídeo 20 e o decodificador de vídeo 30 podem, cada um deles, ser implantado como qualquer um de uma pluralidade de circuitos apropriados, tais como um ou mais microprocessadores, um processador de sinal digital (DSP), um circuito integrado de aplicação específica (ASIC), um arranjo de porta programável por campo (FPGA), lógica discreta, hardware ou qualquer combinação dos mesmos. Se a tecnologia for parcial ou totalmente implantada usando-se software, um aparelho pode armazenar uma instrução do software em um meio de armazenamento legível por computador não transitório apropriado, e pode executar, usando-se um ou mais processadores, uma instrução em hardware para executar a tecnologia na presente invenção. Qualquer um dos itens supracitados (incluindo hardware, software, uma combinação de hardware e software e semelhantes) pode ser considerado como o um ou mais processadores. O codificador de vídeo 20 e o decodificador de vídeo 30 podem, cada um deles, ser incluídos em um ou mais codificadores ou decodificadores, o codificador de vídeo 20 e o decodificador de vídeo 30 podem, cada um deles, ser integrados como parte de um codificador/decodificador combinado (codec (CODEC)) em outro aparelho.
[089] Na presente invenção, pode ser normalmente indicado que o codificador de vídeo 20 envia informações para outro aparelho (por exemplo, o decodificador de vídeo 30) usando um sinal. O termo "envio usando-se um sinal" pode normalmente se referir a um elemento sintático e/ou representar transmissão de dados de vídeo codificados. A transmissão pode ocorrer em tempo real ou quase em tempo real. Alternativamente, esta comunicação pode ocorrer ao longo de um período de tempo, por exemplo, pode ocorrer quando um elemento sintático é armazenado em um meio de armazenamento legível por computador usando-se dados binários codificados durante a codificação. O elemento sintático pode ser recuperado pelo aparelho de decodificação a qualquer momento depois de ser armazenado no meio.
[090] Como mostrado na Figura 4, uma modalidade da presente invenção fornece um método para codificação de imagem através de interpredição. Um procedimento específico é conforme a seguir.
[091] Etapa 401: Determinar informações de movimento de predição de um primeiro bloco de codificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição.
[092] O primeiro bloco de codificação é um bloco atualmente a ser processado e a ser codificado, o preditor de vetor de movimento nas informações de movimento de predição inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e as informações de imagem de referência de predição incluem informações de índice de quadro de referência de um bloco de imagem de referência de predição antecipada e informações de índice de quadro de referência de um bloco de imagem de referência de predição retroativa.
[093] Além disso, o bloco de imagem de referência de predição do primeiro bloco de codificação é obtido com base no preditor de vetor de movimento ou nas informações de imagem de referência de predição do primeiro bloco de codificação.
[094] Opcionalmente, as informações de movimento de predição do primeiro bloco de codificação incluem o preditor de vetor de movimento de avanço, o preditor de vetor de movimento de retorno, uma contagem de ordem de imagem (Picture Order Count, POC) correspondente ao bloco de imagem de referência de predição antecipada e uma POC correspondente ao bloco de imagem de referência de predição retroativa; ou pode incluir somente o preditor de vetor de movimento de avanço e uma POC correspondente ao bloco de imagem de referência de predição antecipada; ou pode incluir somente o preditor de vetor de movimento de retorno e uma POC correspondente ao bloco de imagem de referência de predição retroativa.
[095] Especificamente, para um método para determinar informações de movimento de predição do primeiro bloco de codificação, fazer referência a um método para determinar informações de movimento de predição de um bloco de codificação atual na técnica anterior.
[096] Se um modo de mesclagem de interpredição é usado, uma lista de informações de movimento de predição candidatas é construída com base nas informações de movimento de um bloco adjacente do primeiro bloco de codificação, e informações de movimento de predição candidatas são selecionadas da lista de informações de movimento de predição candidatas como as informações de movimento de predição do primeiro bloco de codificação. A lista de informações de movimento candidatas inclui um preditor de vetor de movimento, informações de índice de quadro de referência de um bloco de imagem de referência, e semelhantes. Deve ser notado que o preditor de vetor de movimento neste modo é um valor de vetor de movimento do bloco adjacente.
[097] Se um modo de não mesclagem de interpredição é usado, uma lista de preditor de vetor de movimento é construída com base nas informações de movimento de um bloco adjacente do primeiro bloco de codificação, e um vetor de movimento é selecionado da lista de preditor de vetor de movimento como o preditor de vetor de movimento do primeiro bloco de codificação. Deve ser notado que o preditor de vetor de movimento neste modo pode ser um valor de vetor de movimento do bloco adjacente, ou pode ser uma soma de um valor de vetor de movimento de um bloco adjacente selecionado e uma diferença de vetor de movimento do primeiro bloco de codificação. A diferença de vetor de movimento é uma diferença entre um vetor de movimento obtido desempenhando-se estimativa de movimento no primeiro bloco de codificação e o valor de vetor de movimento do bloco adjacente selecionado.
[098] Etapa 402: Desempenhar predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação, e obter um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial.
[099] Além disso, quando uma POC correspondente ao bloco de imagem de referência de predição não é igual a uma POC do primeiro bloco de codificação, predição bidirecional, incluindo predição antecipada e predição retroativa, é desempenhada no primeiro bloco de codificação com base nas informações de movimento de predição. Quando a POC correspondente ao bloco de imagem de referência de predição é menor que a POC do primeiro bloco de codificação, predição antecipada é desempenhada no primeiro bloco de codificação com base nas informações de movimento de predição; ou quando a POC correspondente ao bloco de imagem de referência de predição é maior que a POC do primeiro bloco de codificação, predição retroativa é desempenhada no primeiro bloco de codificação com base nas informações de movimento de predição.
[0100] Especificamente, o desempenho de predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial antecipada do primeiro bloco de codificação inclui os processos a seguir.
[0101] S421. Desempenhar predição antecipada no primeiro bloco de codificação com base nas informações de movimento de predição, para ser específico, desempenhar predição antecipada no primeiro bloco de codificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação.
[0102] Em uma possível implantação, a predição antecipada é desempenhada no primeiro bloco de codificação com base no bloco de imagem de referência de predição antecipada nas informações de movimento de predição para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação.
[0103] Em outra implantação possível, a predição antecipada é desempenhada no primeiro bloco de codificação com base no preditor de vetor de movimento de avanço nas informações de movimento de predição para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação.
[0104] S422. Desempenhar predição retroativa no primeiro bloco de codificação com base nas informações de movimento de predição, para ser específico, desempenhar predição retroativa no primeiro bloco de codificação com base nas informações de movimento de predição retroativa para obter um bloco de predição de codificação inicial retroativa do primeiro bloco de codificação.
[0105] Em uma possível implantação, predição antecipada é desempenhada no primeiro bloco de codificação com base no bloco de imagem de referência de predição retroativa nas informações de movimento de predição para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação.
[0106] Em outra implantação possível, predição antecipada é desempenhada no primeiro bloco de codificação com base no preditor de vetor de movimento de retorno nas informações de movimento de predição para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação.
[0107] O bloco de predição de codificação inicial inclui o bloco de predição de codificação inicial antecipada e o bloco de predição de codificação inicial retroativa.
[0108] Além disso, a obtenção de um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial inclui as três implantações a seguir.
[0109] Em uma primeira implantação, o somatório ponderado é desempenhado no bloco de predição de codificação inicial antecipada e no bloco de predição de codificação inicial retroativa para obter o primeiro bloco de predição de codificação do primeiro bloco de codificação.
[0110] Nesta implantação, opcionalmente, um valor médio do bloco de predição de codificação inicial antecipada e do bloco de predição de codificação inicial retroativa é usado como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
[0111] Em uma segunda implantação, o bloco de predição de codificação inicial antecipada é usado como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
[0112] Em uma terceira implantação, o bloco de predição de codificação inicial retroativa é usado como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
[0113] Etapa 403: Desempenhar estimativa de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter pelo menos um segundo bloco de predição de codificação.
[0114] Em algumas modalidades, esta etapa é para desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão. Em uma implantação viável, a localização da busca de movimento é uma localização que está ao redor de uma localização representada pelo preditor de vetor de movimento e que está dentro da cobertura da primeira precisão. Por exemplo, se a localização indicada pelo preditor de vetor de movimento for (1, 1) e a primeira precisão tiver precisão de 1/2 pixel, a localização da busca de movimento será (1,5, 1), (1,5, 1,5), (1,5, -0,5), (1, 1), (1, 1,5), (1, -0,5), (-0,5, 1), (-0,5, 1,5) e (-0,5, -0,5).
[0115] Especificamente, o desempenho de estimativa de movimento de primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter pelo menos um segundo bloco de predição de codificação inclui os seguintes processos:
[0116] S431. Desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de codificação antecipada encontrado como um segundo bloco de predição de codificação antecipada para obter o pelo menos um segundo bloco de predição de codificação.
[0117] S432. Desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de codificação retroativa encontrado como um segundo bloco de predição de codificação retroativa para obter o pelo menos um segundo bloco de predição de codificação, onde o segundo bloco de predição de codificação inclui o segundo bloco de predição de codificação antecipada e o segundo bloco de predição de codificação retroativa.
[0118] A primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel. Isso não é limitado.
[0119] Etapa 404: Calcular uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação.
[0120] Especificamente, o cálculo de uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo o primeiro bloco de codificação inclui os seguintes processos:
[0121] S441. Comparar diferenças entre os segundos blocos de predição de codificação antecipada e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo.
[0122] S442. Comparar diferenças entre os segundos blocos de predição de codificação retroativa e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo, onde o preditor de vetor de movimento alvo inclui o preditor de vetor de movimento de avanço alvo e o preditor de vetor de movimento de retorno alvo.
[0123] Especificamente, quando diferenças entre os segundos blocos de predição de codificação e o primeiro bloco de predição de codificação são comparadas, uma soma de valores absolutos de diferenças de pixel nos dois blocos de imagem pode ser usada como um valor da diferença entre o segundo bloco de predição de codificação e o primeiro bloco de predição de codificação. Opcionalmente, uma soma de valores quadrados de diferenças de pixel nos dois blocos de imagem pode ser usada como um valor da diferença entre o segundo bloco de predição de codificação e o primeiro bloco de predição de codificação. Um método de comparação de diferenças não é especificamente limitado.
[0124] Etapa 405: Desempenhar predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação.
[0125] Especificamente, o desempenho de predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação inclui os seguintes processos:
[0126] S451 Desempenhar predição antecipada no primeiro bloco de codificação com base no preditor de vetor de movimento de avanço alvo para obter um terceiro bloco de predição de codificação antecipada do primeiro bloco de codificação.
[0127] S452. Desempenhar predição retroativa no primeiro bloco de codificação com base no preditor de vetor de movimento de retorno alvo para obter um terceiro bloco de predição de codificação retroativa do primeiro bloco de codificação, onde o terceiro bloco de codificação de predição do primeiro bloco de codificação inclui o terceiro bloco de predição de codificação antecipada do terceiro bloco de predição de codificação retroativa.
[0128] Etapa 406: Obter um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, e codificar o primeiro bloco de codificação com base no bloco de predição de codificação alvo.
[0129] Especificamente, a obtenção de um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação inclui as três implantações a seguir.
[0130] Em uma primeira implantação, o somatório ponderado é desempenhado no terceiro bloco de predição de codificação antecipada e no terceiro bloco de predição de codificação retroativa para obter o bloco de predição de codificação alvo do primeiro bloco de codificação.
[0131] Nesta implantação, opcionalmente, um valor médio do terceiro bloco de predição de codificação antecipada e do terceiro bloco de predição de codificação retroativa é usado como o bloco de predição de codificação alvo do primeiro bloco de codificação.
[0132] Em uma segunda implantação, o terceiro bloco de predição de codificação antecipada é usado como o bloco de predição de codificação alvo do primeiro bloco de codificação.
[0133] Em uma terceira implantação, o terceiro bloco de predição de codificação retroativa é usado como o bloco de predição de codificação alvo do primeiro bloco de codificação.
[0134] Deve ser entendido que, em algumas modalidades, um bit sinalizador pode ser codificado em informações de camada mais alta de um fluxo de código, como um nível de fatia, um nível de imagem, ou um nível de sequência, e o bit sinalizador é usado para indicar se o método de codificação de imagem mostrado na Figura 4 é ou não aplicado.
[0135] Como mostrado na Figura 5, uma modalidade da presente invenção fornece um método para decodificação de imagem através de interpredição. Um procedimento específico é conforme a seguir.
[0136] Etapa 501: Determinar informações de movimento de predição de um primeiro bloco de decodificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição.
[0137] O primeiro bloco de decodificação é um bloco a ser processado atualmente que precisa ser construído com base nas informações de fluxo de código analisadas, o preditor de vetor de movimento nas informações de movimento de predição inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e as informações de imagem de referência de predição incluem informações de índice de quadro de referência de um bloco de imagem de referência de predição antecipada e informações de índice de quadro de referência de um bloco de imagem de referência de predição retroativa.
[0138] Além disso, o bloco de imagem de referência de predição do primeiro bloco de codificação é obtido com base no preditor de vetor de movimento ou nas informações de imagem de referência de predição do primeiro bloco de decodificação.
[0139] Opcionalmente, as informações de movimento de predição do primeiro bloco de decodificação incluem o preditor de vetor de movimento de avanço, o preditor de vetor de movimento de retorno, uma contagem de ordem de imagem (Picture Order Count, POC) correspondente ao bloco de imagem de referência de predição antecipada, e uma POC correspondente ao bloco de imagem de referência de predição retroativa; ou pode incluir somente o preditor de vetor de movimento de avanço e uma POC correspondente ao bloco de imagem de referência de predição antecipada; ou pode incluir somente o preditor de vetor de movimento de retorno e uma POC correspondente ao bloco de imagem de referência de predição retroativa.
[0140] Especificamente, para um método para determinar informações de movimento de predição do primeiro bloco de decodificação, fazer referência a um método para determinar informações de movimento de predição de um bloco de decodificação atual no estado da técnica.
[0141] Se um modo de mesclagem de interpredição é usado, uma lista de informações de movimento de predição candidatas é construída com base nas informações de movimento de um bloco adjacente do primeiro bloco de decodificação, e informações de movimento de predição candidatas são selecionadas da lista de informações de movimento de predição candidatas como as informações de movimento de predição do primeiro bloco de decodificação. A lista de informações de movimento candidatas inclui um preditor de vetor de movimento, informações de índice de quadro de referência de um bloco de imagem de referência, e semelhantes. Deve ser notado que o preditor de vetor de movimento neste modo é um valor de vetor de movimento do bloco adjacente.
[0142] Se um modo de não mesclagem de interpredição é usado, uma lista de preditor de vetor de movimento é construída com base nas informações de movimento de um bloco adjacente do primeiro bloco de decodificação, e um vetor de movimento é selecionado da lista de preditor de vetor de movimento como o preditor de vetor de movimento do primeiro bloco de decodificação. Deve ser notado que o preditor de vetor de movimento neste modo pode ser um valor de vetor de movimento do bloco adjacente, ou pode ser uma soma de um valor de vetor de movimento de um bloco adjacente selecionado e uma diferença de vetor de movimento do primeiro bloco de decodificação. A diferença de vetor de movimento pode ser obtida diretamente através de decodificação.
[0143] Etapa 502: Desempenhar predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação, e obter um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial.
[0144] Além disso, quando uma POC correspondente ao bloco de imagem de referência de predição não é igual a uma POC do primeiro bloco de decodificação, a predição bidirecional incluindo predição antecipada e predição retroativa é desempenhada no primeiro bloco de decodificação com base nas informações de movimento de predição. Quando a POC correspondente ao bloco de imagem de referência de predição é menor que a POC do primeiro bloco de decodificação, predição antecipada é desempenhada no primeiro bloco de decodificação com base nas informações de movimento de predição; ou quando a POC correspondente ao bloco de imagem de referência de predição é maior que a POC do primeiro bloco de decodificação, predição retroativa é desempenhada no primeiro bloco de decodificação com base nas informações de movimento de predição.
[0145] Especificamente, o desempenho de predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação inclui os processos a seguir.
[0146] S521. Desempenhar predição antecipada no primeiro bloco de decodificação com base nas informações de movimento de predição, para ser específico, desempenhar predição antecipada no primeiro bloco de decodificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação.
[0147] Em uma implantação possível, predição antecipada é desempenhada no primeiro bloco de decodificação com base no bloco de imagem de referência de predição antecipada nas informações de movimento de predição para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação.
[0148] Em outra implantação possível, predição antecipada é desempenhada no primeiro bloco de decodificação com base no preditor de vetor de movimento de avanço nas informações de movimento de predição para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação.
[0149] S522. Desempenhar predição retroativa no primeiro bloco de decodificação com base nas informações de movimento de predição, para ser específico, desempenhar predição retroativa no primeiro bloco de decodificação com base nas informações de movimento de predição retroativa para obter um bloco de predição de decodificação inicial retroativa do primeiro bloco de decodificação.
[0150] Em uma possível implantação, predição antecipada é desempenhada no primeiro bloco de decodificação com base no bloco de imagem de referência de predição retroativa nas informações de movimento de predição para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação.
[0151] Em outra implantação possível, predição antecipada é desempenhada no primeiro bloco de decodificação com base no preditor de vetor de movimento de retorno nas informações de movimento de predição para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação.
[0152] O bloco de predição de decodificação inicial inclui o bloco de predição de decodificação inicial antecipada e o bloco de predição de decodificação inicial retroativa.
[0153] Além disso, a obtenção de um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial inclui as três implantações a seguir.
[0154] Em uma primeira implantação, somatório ponderado é desempenhado no bloco de predição de decodificação inicial antecipada e no bloco de predição de decodificação inicial retroativa para obter o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
[0155] Nesta implantação, opcionalmente, um valor médio do bloco de predição de decodificação inicial antecipada e do bloco de predição de decodificação inicial retroativa é usado como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
[0156] Em uma segunda implantação, o bloco de predição de decodificação inicial antecipada é usado como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
[0157] Em uma terceira implantação, o bloco de predição de decodificação inicial retroativa é usado como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
[0158] Etapa 503: Desempenhar estimativa de movimento de primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter pelo menos um segundo bloco de predição de decodificação.
[0159] Em algumas modalidades, esta etapa é para desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão. Em uma implantação viável, a localização da busca de movimento é uma localização que está ao redor de uma localização representada pelo preditor de vetor de movimento e que está dentro da cobertura da primeira precisão. Por exemplo, se a localização indicada pelo preditor de vetor de movimento é (1, 1) e a primeira precisão tiver precisão de 1/2 pixel, a localização da busca de movimento será (1,5, 1), (1,5, 1,5), (1,5, -0,5), (1, 1), (1, 1,5), (1, -0,5), (-0,5, 1), (-0,5, 1,5) e (0,5, -0,5).
[0160] Especificamente, o desempenho de estimativa de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter pelo menos um segundo bloco de predição de decodificação inclui os seguintes processos:
[0161] S531. Desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de decodificação antecipada encontrado como um segundo bloco de predição de decodificação antecipada para obter o pelo menos um segundo bloco de predição de decodificação.
[0162] S532. Desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de decodificação retroativa encontrado como um segundo bloco de predição de decodificação retroativa para obter o pelo menos um segundo bloco de predição de decodificação, onde o segundo bloco de predição de decodificação inclui o segundo bloco de predição de decodificação antecipada e o segundo bloco de predição de decodificação retroativa.
[0163] A primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel. Isso não é limitado.
[0164] Etapa 504: Calcular uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação.
[0165] Especificamente, o cálculo de uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e o uso de um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação inclui os seguintes processos:
[0166] S541. Comparar diferenças entre os segundos blocos de predição de decodificação antecipada e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como o preditor de vetor de movimento alvo.
[0167] S542. Comparar diferenças entre os segundos blocos de predição de decodificação retroativa e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação retroativa com uma menor diferença como o preditor de vetor de movimento, onde o preditor de vetor de movimento alvo inclui o preditor de vetor de movimento de avanço alvo e o preditor de vetor de movimento de retorno alvo.
[0168] Especificamente, quando diferenças entre os segundos blocos de predição de decodificação e o primeiro bloco de predição de decodificação são comparadas, uma soma de valores absolutos de diferenças de pixel nos dois blocos de imagem pode ser usada como um valor da diferença entre o segundo bloco de predição de decodificação e o primeiro bloco de predição de decodificação. Opcionalmente, uma soma de valores quadrados de diferenças de pixel nos dois blocos de imagem pode ser usada como um valor da diferença entre o segundo bloco de predição de decodificação e o primeiro bloco de predição de decodificação. Um método de comparação de diferenças não é especificamente limitado.
[0169] Etapa 505: Desempenhar predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação.
[0170] Especificamente, o desempenho de predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação inclui os seguintes processos:
[0171] S551. Desempenhar predição antecipada no primeiro bloco de decodificação com base no preditor de vetor de movimento de avanço alvo para obter um terceiro bloco de predição de decodificação antecipada do primeiro bloco de decodificação.
[0172] S552. Efetuar predição retroativa no primeiro bloco de decodificação com base no preditor de vetor de movimento de retorno alvo para obter um terceiro bloco de predição de decodificação retroativa do primeiro bloco de decodificação, onde o terceiro bloco de predição de decodificação do primeiro bloco de decodificação inclui o terceiro bloco de predição de decodificação antecipada e o terceiro bloco de predição de decodificação retroativa.
[0173] Etapa 506: Obter um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, e decodificar o primeiro bloco de decodificação com base no bloco de predição de decodificação alvo.
[0174] Especificamente, a obtenção de um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação inclui as três implantações a seguir.
[0175] Em uma primeira implantação, somatório ponderado é desempenhado no terceiro bloco de predição de decodificação antecipada e no terceiro bloco de predição de decodificação retroativa para obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
[0176] Nesta implantação, opcionalmente, um valor médio do terceiro bloco de predição de decodificação antecipada e o terceiro bloco de predição de decodificação retroativa é usado como o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
[0177] Em uma segunda implantação, o terceiro bloco de predição de decodificação antecipada é usado como o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
[0178] Em uma terceira implantação, o terceiro bloco de predição de decodificação retroativa é usado como bloco de predição de decodificação alvo do primeiro bloco de decodificação.
[0179] Deve ser entendido que, em algumas modalidades, correspondentes a um lado de codificador, um bit de sinalização pode ser primeiro analisado em informações de camada mais alta de um fluxo de código, tal como um nível de faixa, um nível de imagem, ou um nível de sequência, e o bit sinalizador é usado para indicar se o método de decodificação de imagem mostrado na Figura 5 é ou não aplicado.
[0180] A seguir se descreve em detalhe o método de codificação na Figura 4 e o método de decodificação na Figura 5 usando-se diversas modalidades específicas.
MODALIDADE 1
[0181] Como mostrado na Figura 6A e na Figura 6B, um bloco de decodificação atual é um primeiro bloco de decodificação, e informações de movimento de predição do bloco de decodificação atual são obtidas. É presumido que preditores de vetor de movimento de avanço e de retorno do bloco de decodificação atual são respectivamente (-10, 4) e (5, 6), uma POC correspondente ao bloco de decodificação atual é 4, uma POC correspondente a um bloco de imagem de referência de predição antecipada é 2, e uma POC correspondente a um bloco de imagem de referência de predição retroativa é 6.
[0182] Predição antecipada e predição retroativa são desempenhadas separadamente no bloco de decodificação atual para obter um bloco de predição de decodificação antecipada inicial (Forward Prediction Block, FPB) e um bloco de predição de decodificação retroativa inicial (Backward Prediction Block, BPB) do bloco de decodificação atual, e é presumido que o bloco de predição de decodificação antecipada inicial e o bloco de predição de decodificação retroativa inicial são respectivamente um FPB 1 e um BPB 1. O somatório ponderado é desempenhado no FPB 1 e no BPB 1 para obter um primeiro bloco de predição de decodificação (Decoding Prediction Block, DPB) do bloco de decodificação atual, e é presumido que o primeiro bloco de predição de decodificação é um DPB 1.
[0183] (-10, 4) e (5, 6) são usados como entrada de referência dos preditores de vetor de movimento de avanço e de retorno, e busca de movimento de primeira precisão é desempenhada separadamente no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa. Nesse caso, a primeira precisão é de 1/2 pixel de precisão em uma faixa de 1 pixel. O primeiro bloco de predição de decodificação DPB 1 é usado como uma referência. Diferenças entre o primeiro bloco de predição de decodificação DPB 1 e cada um de novos blocos de predição de decodificação antecipada e retroativa correspondentes encontrados através da busca de movimento são comparadas para se obter preditores de vetor de movimento de avanço e de retorno correspondentes a um novo bloco de predição de decodificação com uma menor diferença do DPB 1, para servir como preditores de vetor de movimento alvo. É presumido que os preditores de vetor de movimento de avanço e de retorno são respectivamente (-11,4) e (6, 6).
[0184] Os preditores de vetor de movimento alvo são atualizados para (11, 4) e (6, 6). Além disso, predição antecipada e predição retroativa são desempenhadas no primeiro bloco de decodificação com base nos preditores de vetor de movimento alvo, e somatório ponderado é desempenhado no novo bloco de predição de decodificação antecipada e no bloco de predição de decodificação retroativa obtidos para obter um bloco de predição de decodificação alvo. É presumido que o bloco de predição de decodificação alvo é um DPB 2, e o bloco de predição de decodificação do bloco de decodificação atual é atualizado para o DPB 2.
[0185] Deve ser notado que, quando busca de movimento da primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa, a primeira precisão pode ser qualquer precisão especificada, por exemplo, pode ser precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
MODALIDADE 2
[0186] Como mostrado na Figura 6A e na Figura 6B, um bloco de codificação atual é um primeiro bloco de codificação, e informações de movimento de predição do bloco de codificação atual são obtidas. É presumido que os preditores de vetor de movimento de avanço e de retorno do bloco de codificação atual são respectivamente (-10, 4) e (5, 6), uma POC correspondente ao bloco de codificação atual é 4, uma POC correspondente a uma imagem de referência de predição antecipada o bloco é 2 e uma POC correspondente a um bloco de imagem de referência de predição retroativa é 6.
[0187] Predição antecipada e predição retroativa são desempenhadas separadamente no bloco de codificação atual para obter um bloco de predição de codificação antecipada inicial e um bloco de predição de codificação retroativa inicial do bloco de codificação atual, e é presumido que o bloco de predição de codificação antecipada inicial e o bloco de predição de codificação retroativa inicial são respectivamente um FPB 1 e um BPB 1. O somatório ponderado é desempenhado no FPB 1 e no BPB 1 para obter um primeiro bloco de predição de codificação do bloco de codificação atual, e é presumido que o primeiro bloco de predição de codificação é um DPB 1.
[0188] [0188] (-10, 4) e (5, 6) são usados como entrada de referência dos preditores de vetor de movimento de avanço e de retorno, e busca de movimento de primeira precisão é desempenhada separadamente no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa. Nesse caso, a primeira precisão é precisão de 1/2 pixel em uma faixa de 1 pixel. O primeiro bloco de predição de codificação DPB 1 é usado como referência. Diferenças entre o primeiro bloco de predição de codificação DPB 1 e cada um de novos blocos correspondentes de predição de codificação antecipada e retroativa encontrados através da busca de movimento são comparadas para obter preditores de vetor de movimento de avanço e de retorno correspondentes a um novo bloco de predição de codificação com uma menor diferença do DPB 1, para servir como preditores de vetor de movimento alvo. É presumido que os preditores de vetor de movimento de avanço e de retorno são respectivamente (-11, 4) e (6, 6).
[0189] Os preditores de vetor de movimento alvo são atualizados para (11, 4) e (6, 6). Além disso, predição antecipada e predição retroativa são desempenhadas no primeiro bloco de codificação com base nos preditores de vetor de movimento alvo, e somatório ponderado é desempenhado no novo bloco de predição de codificação antecipada e novo bloco de predição de codificação retroativa obtidos para obter um bloco de predição de codificação alvo. É presumido que o bloco de predição de codificação alvo é um DPB 2 e o bloco de predição de codificação do bloco de codificação atual é atualizado para o DPB 2.
[0190] Deve ser notado que, quando a busca de movimento da primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa, a primeira precisão pode ser qualquer precisão especificada, por exemplo, pode ser precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
MODALIDADE 3
[0191] Como mostrado na Figura 7, um bloco de decodificação atual é um primeiro bloco de decodificação, e informações de movimento de predição do bloco de decodificação atual são obtidas. É presumido que um preditor de vetor de movimento de avanço do bloco de decodificação atual é (-21, 18), uma POC correspondente ao bloco de decodificação atual é 4, e uma POC correspondente a um bloco de imagem de referência de predição antecipada é 2.
[0192] Predição antecipada é desempenhada no bloco de decodificação atual para obter um bloco de predição de decodificação antecipada inicial do bloco de decodificação atual, e é presumido que o bloco de predição de decodificação antecipada inicial é um FPB 1. Neste caso, o FPB 1 é usado como um primeiro bloco de predição de decodificação do bloco de decodificação atual, e o primeiro bloco de predição de decodificação é denotado como um DPB 1.
[0193] (-21, 18) é usado como entrada de referência do preditor de vetor de movimento de avanço, e busca de movimento de primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada. Nesse caso, a primeira precisão é precisão de 1 pixel em uma faixa de 5 pixels. O primeiro bloco de predição de decodificação DPB 1 é usado como uma referência. Diferenças entre o primeiro bloco de predição de decodificação DPB 1 e novos blocos de predição de decodificação retroativa correspondentes encontrados através da busca de movimento são comparadas para obter um preditor de vetor de movimento de avanço correspondente a um novo bloco de predição de decodificação com uma menor diferença do DPB 1, para servir como um preditor de vetor de movimento alvo. É presumido que o preditor de vetor de movimento de avanço é (-19, 19).
[0194] O preditor de vetor de movimento alvo é atualizado para (-19, 19). Além disso, predição antecipada é desempenhada no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo, e o novo bloco de predição de decodificação antecipada obtido é usado como um bloco de predição de decodificação alvo. É presumido que o bloco de predição de decodificação alvo é um DPB 2, e o bloco de predição de decodificação do bloco de decodificação atual é atualizado para o DPB 2.
[0195] Deve ser notado que, quando busca de movimento da primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada e em um bloco de imagem de referência de predição retroativa, a primeira precisão pode ser qualquer precisão especificada, por exemplo, pode ser precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
MODALIDADE 4
[0196] Como mostrado na Figura 7, um bloco de codificação atual é um primeiro bloco de codificação, e informações de movimento de predição do bloco de codificação atual são obtidas. É presumido que um preditor de vetor de movimento de avanço do bloco de codificação atual é (-21, 18), uma POC correspondente ao bloco de codificação atual é 4, e uma POC correspondente a um bloco de imagem de referência de predição antecipada é 2.
[0197] Predição antecipada é desempenhada no bloco de codificação atual para obter um bloco de predição de codificação antecipada inicial do bloco de codificação atual, e é presumido que o bloco de predição de codificação antecipada inicial é um FPB 1. Neste caso, o FPB 1 é usado como um primeiro bloco de predição de codificação do bloco de codificação atual, e o primeiro bloco de predição de codificação é denotado como um DPB 1.
[0198] (-21, 18) é usado como entrada de referência do preditor de vetor de movimento de avanço, e busca de movimento de primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada. Nesse caso, a primeira precisão é precisão de 1 pixel em uma faixa de 5 pixels. O primeiro bloco de predição de codificação DPB 1 é usado como uma referência. Diferenças entre o primeiro bloco de predição de codificação DPB 1 e novos blocos de predição de codificação retroativa correspondentes encontrados através da busca de movimento são comparadas para obter um preditor de vetor de movimento de avanço correspondente a um novo bloco de predição de codificação com uma menor diferença do DPB 1, para servir como um preditor de vetor de movimento alvo. É presumido que o preditor de vetor de movimento de avanço é (-19, 19).
[0199] O preditor de vetor de movimento alvo é atualizado para (-19, 19). Além disso, predição antecipada é desempenhada no primeiro bloco de codificação com base no preditor de vetor de movimento alvo, e o novo bloco de predição de codificação antecipada obtido é usado como um bloco de predição de codificação alvo. É presumido que o bloco de predição de codificação alvo é um DPB 2, e o bloco de predição de codificação do bloco de codificação atual é atualizado para o DPB 2.
[0200] Deve ser notado que, quando busca de movimento da primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada e em um bloco de imagem de referência de predição retroativa, a primeira precisão pode ser qualquer precisão especificada, por exemplo, pode ser precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
MODALIDADE 5
[0201] Como mostrado na Figura 8A, na Figura 8B, na Figura 8C e na Figura 8D, um bloco de codificação atual é um primeiro bloco de codificação, e informações de movimento de predição do bloco de codificação atual são obtidas. É presumido que preditores de vetor de movimento de avanço e de retorno do bloco de codificação atual são respectivamente (-6, 12) e (8, 4), uma POC correspondente ao bloco de codificação atual é 8, uma POC correspondente a um bloco de imagem de referência de predição antecipada é 4, e uma POC correspondente a um bloco de imagem de referência de predição retroativa é 12.
[0202] Predição antecipada e predição retroativa são separadamente desempenhadas no bloco de codificação atual para obter um bloco de predição de codificação antecipada inicial e um bloco de predição de codificação retroativa inicial do bloco de codificação atual, e é presumido que o bloco de predição de codificação antecipada inicial e o bloco de predição de codificação retroativa inicial são respectivamente um FPB 1 e um BPB 1. Somatório ponderado é desempenhado no FPB 1 e no BPB 1 para obter um primeiro bloco de predição de codificação do bloco de codificação atual, e é presumido que o primeiro bloco de predição de codificação é um DPB 1.
[0203] (-6, 12) e (8, 4) são usados como entrada de referência dos preditores de vetor de movimento de avanço e de retorno, e busca de movimento de primeira precisão é desempenhada separadamente no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa. O primeiro bloco de predição de codificação DPB 1 é usado como uma referência. Diferenças entre o primeiro bloco de predição de codificação DPB 1 e cada um de novos blocos correspondentes de predição de codificação antecipada e retroativa encontrados através da busca de movimento são comparadas para obter preditores de vetor de movimento de avanço e de retorno correspondentes a um novo bloco de predição de codificação com uma menor diferença do DPB 1, para servir como preditores de vetor de movimento alvo. É presumido que os preditores de vetor de movimento de avanço e de retorno são respectivamente (-11, 4) e (6, 6).
[0204] Os preditores de vetor de movimento alvo são atualizados para (11, 4) e (6, 6). Além disso, predição antecipada e predição retroativa são desempenhadas no primeiro bloco de codificação com base nos preditores de vetor de movimento alvo, e somatório ponderado é desempenhado no novo bloco de predição de codificação antecipada e no novo bloco de predição de codificação retroativa obtidos para obter um bloco de predição de codificação alvo. É presumido que o bloco de predição de codificação alvo é um DPB 2, e o bloco de predição de codificação do bloco de codificação atual é atualizado para o DPB 2.
[0205] Subsequentemente, (-11, 4) e (6, 6) são usados como entrada de referência dos preditores de vetor de movimento de avanço e de retorno, e busca de movimento da primeira precisão é desempenhada separadamente no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa. O bloco de predição de codificação DPB 2 do bloco de codificação atual é usado como uma referência. Diferenças entre o primeiro bloco de predição de codificação DPB 2 e cada um de novos blocos de predição de codificação antecipada e retroativa correspondentes encontrados através da busca de movimento são comparadas para obter preditores de vetor de movimento de avanço e de retorno correspondentes a um novo bloco de predição de codificação com uma menor diferença do DPB 2, para servirem como novos preditores de vetor de movimento alvo. É presumido que os preditores de vetor de movimento de avanço e de retorno são respectivamente (-7, 11) e (6, 5).
[0206] Subsequentemente, os preditores de vetor de movimento alvo são atualizados para (-7, 11) e (6, 5). Além disso, predição antecipada e predição retroativa são desempenhadas no primeiro bloco de codificação com base nos últimos preditores de vetor de movimento alvo, e somatório ponderado é desempenhado no novo bloco de predição de codificação antecipada e no bloco de predição de codificação retroativa para obter um bloco de predição de codificação alvo. É presumido que o bloco de predição de codificação alvo é um DPB 3, e o bloco de predição de codificação do bloco de codificação atual é atualizado para o DPB 3.
[0207] Além disso, o preditor de vetor de movimento alvo pode ser subsequentemente atualizado de acordo com o método supracitado, de modo que uma quantidade de repetições não seja limitada.
[0208] Deve ser notado que, quando busca de movimento da primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa, a primeira precisão pode ser qualquer precisão especificada, por exemplo, pode ser precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
MODALIDADE 6
[0209] Nesta modalidade, uma maneira de obter um preditor de vetor de movimento em um processo de codificação de um modo de não mesclagem de interpredição é diferente daquele nas modalidades supracitadas. A modalidade 6 descreve em detalhe um processo de decodificação do modo de não mesclagem de interpredição. Da mesma forma, o processo de codificação e o processo de decodificação são semelhantes no modo de não mesclagem de interpredição, e detalhes não são descritos novamente no presente documento.
[0210] Como mostrado na Figura 9A e na Figura 9B, um bloco de decodificação atual é um primeiro bloco de decodificação, e informações de movimento de predição do bloco de decodificação atual são obtidas. É presumido que valores de vetor de movimento para frente e para trás do bloco de decodificação atual são respectivamente (-10, 4) e (5, 6), diferenças de vetor de movimento para frente e para trás são respectivamente (-2, 1) e (1, 1), uma POC correspondente ao bloco de decodificação atual é 4, uma POC correspondente a um bloco de imagem de referência de predição antecipada é 2, e uma POC correspondente a um bloco de imagem de referência de predição retroativa é 6.
[0211] Predição antecipada e predição retroativa são desempenhadas separadamente no bloco de decodificação atual para obter um bloco de predição de decodificação antecipada inicial (-FPB) e um bloco de predição de decodificação retroativa inicial (BPB) do bloco de decodificação atual, e é presumido que o bloco de predição de decodificação antecipada inicial e o bloco de predição de decodificação retroativa inicial são respectivamente um FPB 1 e um BPB 1. Somatório ponderado é desempenhado no FPB 1 e no BPB 1 para obter um primeiro bloco de predição de decodificação (DPB) do bloco de decodificação atual, e é presumido que o primeiro bloco de predição de decodificação é um DPB 1.
[0212] Preditores de vetor de movimento de avanço e de retorno (-10, 4) + (-2, 1) = (-12, 5) e (5, 6) + (1, 1) = (6, 7) são usados como entrada de referência dos vetores de movimento para frente e para trás, e busca de movimento de primeira precisão é desempenhada separadamente no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa. Nesse caso, a primeira precisão é de precisão de 1/4 de pixel em uma faixa de 1 pixel. O primeiro bloco de predição de decodificação DPB 1 é usado como uma referência. Diferenças entre o primeiro bloco de predição de decodificação DPB1 e cada um de novos blocos de predição de decodificação antecipada e retroativa correspondentes encontrados através da busca de movimento são comparadas para obter vetores de movimento para frente e para trás correspondentes a um novo bloco de predição de decodificação com uma menor diferença do DPB1, para servir como preditores de vetor de movimento alvo. É presumido que os vetores de movimento para frente e para trás são respectivamente (-11, 4) e (6, 6).
[0213] Os preditores de vetor de movimento alvo são atualizados para (11, 4) e (6, 6). Além disso, predição antecipada e predição retroativa são desempenhadas no primeiro bloco de decodificação com base nos preditores de vetor de movimento alvo, e somatório ponderado é desempenhado no novo bloco de predição de decodificação antecipada e no bloco de predição de decodificação retroativa para obter um bloco de predição de decodificação alvo. É presumido que o bloco de predição de decodificação alvo é um DPB 2, e o bloco de predição de decodificação do bloco de decodificação atual é atualizado para o DPB 2.
[0214] Deve ser notado que, quando busca de movimento da primeira precisão é desempenhada no bloco de imagem de referência de predição antecipada e no bloco de imagem de referência de predição retroativa, a primeira precisão pode ser qualquer precisão especificada, por exemplo, pode ser precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
[0215] Em conclusão, os métodos de codificação e decodificação precedentes podem ser aplicados a todos os processos de predição bidirecional em codificação e decodificação de imagem de vídeo, e um preditor de vetor de movimento atualizado e blocos de predição de codificação e decodificação podem ser aplicados a todos os processos de codificação e decodificação de imagem de vídeo. Um sistema codec obtém blocos de predição de codificação e decodificação atuais com base nas informações de movimento de predição de blocos de codificação e decodificação atuais; desempenha busca de movimento com base em um preditor de vetor de movimento e um bloco de imagem de referência de predição para obter novos blocos de predição de codificação e decodificação; e atualiza o preditor de vetor de movimento e os blocos de predição de codificação e decodificação dos blocos de codificação e decodificação atuais através de comparação de diferenças com blocos de predição de codificação e decodificação atuais, de modo a aperfeiçoar precisão de movimento.
[0216] De acordo com as modalidades supracitadas, como mostrado na Figura 10, uma modalidade da presente invenção fornece um aparelho 1000 para codificação de imagem através de interpredição. Como mostrado na Figura 10, o aparelho 1000 inclui uma unidade de determinação 1001, uma unidade de processamento 1002, e uma unidade de codificação 1003.
[0217] A unidade de determinação 1001 é configurada para determinar informações de movimento de predição de um primeiro bloco de codificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição.
[0218] A unidade de processamento 1002 é configurada para: desempenhar predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação, e obter um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco inicial de predição de codificação; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de codificação, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação; e desempenhar predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação.
[0219] A unidade de codificação 1003 é configurada para: obter um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, e codificar o primeiro bloco de codificação com base no bloco de predição de codificação alvo.
[0220] Opcionalmente, as informações de movimento de predição incluem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição inclui um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
[0221] Opcionalmente, o bloco de predição de codificação inicial inclui um bloco de predição de codificação inicial antecipada e um bloco de predição de codificação inicial retroativa, e quando se está desempenhando predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter o bloco de predição de codificação inicial do primeiro bloco de codificação, a unidade de processamento 1002 é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de codificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de codificação inicial retroativa do primeiro bloco de codificação.
[0222] Opcionalmente, quando se está obtendo o primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial, a unidade de processamento 1002 é especificamente configurada para: desempenhar somatório ponderado no bloco de predição de codificação inicial antecipada e no bloco de predição de codificação inicial retroativa para obter o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial antecipada como o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial retroativa como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
[0223] Opcionalmente, o segundo bloco de predição de codificação inclui um segundo bloco de predição de codificação antecipada e um segundo bloco de predição de codificação retroativa, e quando está desempenhando busca de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter o pelo menos um segundo bloco de predição de codificação, a unidade de processamento 1002 é especificamente configurada para: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de codificação antecipada encontrado como o segundo bloco de predição de codificação antecipada para obter o pelo menos um segundo bloco de predição de codificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de codificação retroativa encontrado como o segundo bloco de predição de codificação retroativa para obter o pelo menos um segundo bloco de predição de codificação.
[0224] A primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
[0225] Opcionalmente, o preditor de vetor de movimento alvo inclui um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e quando se está calculando a diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usando o preditor de vetor de movimento entre o primeiro bloco de codificação e o segundo bloco de predição de codificação com uma menor diferença como o preditor de vetor de movimento alvo do primeiro bloco de codificação, a unidade de processamento 1002 é especificamente configurada para: comparar diferenças entre os segundos blocos de predição de codificação antecipada e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de avanço entre o primeiro bloco de codificação e um segundo bloco de predição de codificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; ou comparar diferenças entre os segundos blocos de predição de codificação retroativa e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
[0226] Opcionalmente, o terceiro bloco de predição de codificação do primeiro bloco de codificação inclui um terceiro bloco de predição de codificação antecipada e um terceiro bloco de predição de codificação retroativa, e quando está desempenhando predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de codificação do primeiro bloco de codificação, a unidade de processamento 1002 é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de codificação com base no preditor de vetor de movimento de avanço alvo para obter o terceiro bloco de predição de codificação antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de codificação retroativa do primeiro bloco de codificação.
[0227] Opcionalmente, quando se está obtendo o bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, a unidade de processamento 1002 é especificamente configurada para: desempenhar somatório ponderado no terceiro bloco de predição de codificação antecipada e no terceiro bloco de predição de codificação retroativa para obter o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação antecipada como o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação retroativa como o bloco de predição de codificação alvo do primeiro bloco de codificação.
[0228] Deve ser notado que, para implantação da função e uma maneira de interação de cada unidade do aparelho 1000 nesta modalidade da presente invenção, deve-se fazer referência adicionalmente a descrições em uma modalidade de método relacionada. Detalhes não são descritos novamente no presente documento.
[0229] De acordo com um mesmo conceito de invenção, como mostrado na Figura 11, uma modalidade da presente invenção fornece adicionalmente um codificador 1100. Como mostrado na Figura 11, o codificador 1100 inclui um processador 1101 e uma memória 1102. O código de programa usado para executar as soluções da presente invenção é armazenado na memória 1102, e é usado para instruir o processador 1101 a desempenhar o método de codificação mostrado na Figura 4
[0230] Código correspondente ao método mostrado na Figura 4 também pode ser construído em um chip desempenhando-se programação de projeto para o processador, de modo que quando o chip esteja ativo, o método mostrado na Figura 4 possa ser desempenhado.
[0231] De acordo com as modalidades supracitadas, como mostrado na Figura 12, uma modalidade da presente invenção fornece um aparelho 1200 para decodificação de imagem através de interpredição. Como mostrado na Figura 12, o aparelho 1200 inclui uma unidade de determinação 1201, uma unidade de processamento 1202, e uma unidade de decodificação 1203.
[0232] A unidade de determinação 1201 é configurada para determinar informações de movimento de predição de um primeiro bloco de decodificação, onde as informações de movimento de predição incluem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição.
[0233] A unidade de processamento 1202 é configurada para: desempenhar predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação, e obter um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de decodificação, onde uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação; e desempenhar predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação.
[0234] A unidade de decodificação 1203 é configurada para: obter um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, e decodificar o primeiro bloco de decodificação com base no bloco de predição de decodificação alvo.
[0235] Opcionalmente, as informações de movimento de predição incluem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento inclui um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição inclui um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
[0236] Opcionalmente, o bloco de predição de decodificação inicial inclui um bloco de predição de decodificação inicial antecipada e um bloco de predição de decodificação inicial retroativa, e quando está desempenhando predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter o bloco de predição de decodificação inicial do primeiro bloco de decodificação, a unidade de processamento 1202 é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de decodificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de decodificação inicial retroativa do primeiro bloco de decodificação.
[0237] Opcionalmente, quando se está obtendo o primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial, a unidade de processamento 1202 é especificamente configurada para: desempenhar somatório ponderado no bloco de predição de decodificação inicial antecipada e no bloco de predição de decodificação inicial retroativa para obter o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial antecipada como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial retroativa como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
[0238] Opcionalmente, o segundo bloco de predição de decodificação inclui um segundo bloco de predição de decodificação antecipada e um segundo bloco de predição de decodificação retroativa, e quando está desempenhando busca de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter o pelo menos um segundo bloco de predição de decodificação, a unidade de processamento 1202 é especificamente configurada para: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de decodificação antecipada encontrado como o segundo bloco de predição de decodificação para obter o pelo menos um segundo bloco de predição de decodificação de; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de decodificação retroativa encontrado como o segundo bloco de predição de decodificação retroativa para obter pelo menos um segundo bloco de predição de decodificação.
[0239] A primeira precisão inclui precisão integral de pixel, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel.
[0240] Opcionalmente, o preditor de vetor de movimento alvo inclui um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e quando se está calculando a diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usando o preditor de vetor de movimento entre o primeiro bloco de decodificação e o segundo bloco de predição de decodificação com uma menor diferença como o preditor de vetor de movimento alvo do primeiro bloco de decodificação, a unidade de processamento 1202 é especificamente configurada para: comparar diferenças entre os segundos blocos de predição de decodificação antecipada e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação antecipada com uma menor diferença como o preditor de vetor de movimento; ou comparar diferenças entre os segundos blocos de predição de decodificação retroativa e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
[0241] Opcionalmente, o terceiro bloco de predição de decodificação do primeiro bloco de decodificação inclui um terceiro bloco de predição de decodificação antecipada e um terceiro bloco de predição de decodificação retroativa, e quando se está desempenhando predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de decodificação do primeiro bloco de decodificação, a unidade de processamento 1202 é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de decodificação com base no preditor de vetor de movimento de avanço alvo para obter o terceiro bloco de predição de decodificação antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de decodificação retroativa do primeiro bloco de decodificação.
[0242] Opcionalmente, quando se está obtendo o bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, a unidade de processamento 1202 é especificamente configurada para: desempenhar somatório ponderado no terceiro bloco de predição de decodificação antecipada e no terceiro bloco de predição de decodificação retroativa para obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação antecipada como o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação retroativa como o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
[0243] Deve ser notado que, para implantação de função e maneira de interação de cada unidade do aparelho 1200 nesta modalidade da presente invenção, deve-se fazer referência adicional a descrições em uma modalidade de método relacionada. Detalhes não são descritos novamente no presente documento.
[0244] Deve ser entendido que a divisão das unidades no aparelho 1200 e no aparelho 1000 é meramente divisão de função lógica. Em uma implantação real, todas as ou algumas das unidades podem ser integradas em uma entidade física, ou as unidades podem estar fisicamente separadas. Por exemplo, as unidades supracitadas podem ser elementos de processamento dispostos separadamente, ou podem ser integradas em um chip de um controlador para implantação, ou podem ser armazenadas em um elemento de memória de um controlador em uma forma de código de programa e invocadas por um elemento de processamento do controlador para implantar funções das unidades supracitadas. Além disso, as unidades podem ser integradas ou podem ser implantadas separadamente. O elemento de processamento pode ser um chip de circuito integrado e tem uma capacidade de processamento de sinal. Em um processo de implantação, as etapas nos métodos supracitados ou nas unidades supracitadas podem ser implantadas usando-se um circuito lógico integrado de hardware no elemento de processamento, ou usando-se instruções em uma forma de software. O elemento de processamento pode ser um processador de propósito geral, tal como uma unidade de processamento central (em inglês: Central Processing Unit, CPU abreviadamente); ou pode ser configurado como um ou mais circuitos integrados que desempenham os métodos supracitados, como um ou mais circuitos integrados de aplicação específica (em inglês: application-specific integrated circuit, ASIC abreviadamente), um ou mais microprocessadores (em inglês: digital signal processor, DSP abreviadamente), ou um ou mais arranjo de portas programáveis por campo (em inglês: field- programmable gate array, FPGA abreviadamente).
[0245] De acordo com um mesmo conceito de invenção, uma modalidade da presente invenção fornece adicionalmente um decodificador 1300. Como mostrado na Figura 13, o decodificador 1300 inclui um processador 1301 e uma memória 1302. O código de programa usado para executar as soluções da presente invenção é armazenado na memória 1302, e é usado para instruir o processador 1301 a desempenhar o método de decodificação mostrado na Figura 5.
[0246] Código correspondente ao método mostrado na Figura 5 também pode ser construído em um chip desempenhando-se programação de projeto para o processador, de modo que quando o chip esteja ativo, o método mostrado na Figura 5 possa ser desempenhado.
[0247] Pode ser entendido que, o processador no codificador 1100 e o decodificador 1300 nas modalidades da presente invenção podem ser uma CPU, um DSP, um ASIC, ou um ou mais circuitos integrados configurados para controlar execução de programa nas soluções da presente invenção. Uma ou mais memórias incluídas em um sistema de computador podem ser uma memória somente para leitura (em inglês: read-only memory, ROM abreviadamente) ou outro tipo de dispositivo de armazenamento estático que tenha capacidade de armazenar informações estáticas e uma instrução estática, uma memória de acesso aleatório (em inglês: random access memory RAM abreviadamente) ou outro tipo de dispositivo de armazenamento dinâmico que tenha capacidade de armazenar informações e uma instrução, ou pode ser uma memória de disco magnético. Essas memórias são conectadas ao processador usando-se um barramento ou podem ser conectadas ao processador usando-se um cabo de conexão dedicado.
[0248] Uma pessoa de habilidade comum na técnica pode entender que todas as ou algumas das etapas nos métodos supracitados das modalidades podem ser implantadas por um programa instruindo um processador. O programa supracitado pode ser armazenado em um meio de armazenamento legível por computador. O meio de armazenamento é um meio não transitório (em inglês: non- transitory), tal como uma memória de acesso aleatório, uma memória somente para leitura, uma memória flash, um disco rígido, uma unidade de estado sólido, uma fita magnética (em inglês: magnetic tape), um disquete (em inglês: floppy disk), um disco óptico (em inglês: optical disc) ou qualquer combinação dos mesmos.
[0249] A presente invenção é descrita com referência a respectivos fluxogramas e diagramas de blocos dos métodos e dos dispositivos nas modalidades da presente invenção. Deve ser entendido que instruções de programa de computador podem ser usadas para implantar cada processo e cada bloco nos fluxogramas e nos diagramas de blocos e uma combinação de um processo e um bloco nos fluxogramas e nos diagramas de bloco. Estas instruções de programas de computador podem ser fornecidas para um computador de propósito geral, um computador dedicado, um processador incorporado, ou um processador de qualquer outro dispositivo de processamento de dados programável para gerar uma máquina, para que as instruções executadas por um computador ou um processador de qualquer outro dispositivo de processamento de dados programável gerem um aparelho para implantar uma função específica em um ou mais processos nos fluxogramas ou em um ou mais blocos nos diagramas de blocos.
[0250] As descrições supracitadas são meramente exemplos de implantações da presente invenção, mas não se destinam a limitar o escopo de proteção da presente invenção. Qualquer variação ou substituição prontamente determinada por uma pessoa habilitada na técnica dentro do escopo técnico revelado na presente invenção estará abrangida pelo escopo de proteção da presente invenção. Portanto, o escopo de proteção da presente invenção estará sujeito ao escopo de proteção das reivindicações.

Claims (28)

1. Método para codificação de imagem através de interpredição implementado por um aparelho para codificação de imagem através de interpredição, CARACTERIZADO pelo fato de que compreende: determinar (401) informações de movimento de predição de um primeiro bloco de codificação, em que as informações de movimento de predição compreendem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; desempenhar (402) predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação, e obter um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de codificação, em que uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão, em que o segundo bloco de predição de codificação compreende um segundo bloco de predição de codificação antecipada e um segundo bloco de predição de codificação retroativa, e o desempenho de busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de codificação compreende: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de codificação antecipada encontrado como o segundo bloco de predição de codificação antecipada para obter o pelo menos um segundo bloco de predição de codificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de codificação retroativa encontrado como o segundo bloco de predição de codificação retroativa para obter o pelo menos um segundo bloco de predição de codificação, em que a primeira precisão compreende precisão de pixel inteiro, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel; calcular (404) uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação; desempenhar (405) predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação; e obter (406) um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, e codificar o primeiro bloco de codificação com base no bloco de predição de codificação alvo.
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que as informações de movimento de predição compreendem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento compreende um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição compreende um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
3. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que o bloco de predição de codificação inicial compreende um bloco de predição de codificação inicial antecipada e um bloco de predição de codificação inicial retroativa, e o desempenho de predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação compreende: desempenhar predição antecipada no primeiro bloco de codificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de codificação inicial retroativa do primeiro bloco de codificação.
4. Método, de acordo com a reivindicação 3, CARACTERIZADO pelo fato de que a obtenção de um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial compreende: desempenhar somatório ponderado no bloco de predição de codificação inicial antecipada e no bloco de predição de codificação inicial retroativa para obter o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial antecipada como o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial retroativa como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
5. Método, de acordo com a reivindicação 4, CARACTERIZADO pelo fato de que o preditor de vetor de movimento alvo compreende um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e o cálculo de uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e uso de um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação compreende: comparar diferenças entre os segundos blocos de predição de codificação antecipada e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; e/ou comparar diferenças entre os segundos blocos de predição de codificação retroativa e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
6. Método, de acordo com a reivindicação 5, CARACTERIZADO pelo fato de que o terceiro bloco de predição de codificação do primeiro bloco de codificação compreende um terceiro bloco de predição de codificação antecipada e um terceiro bloco de predição de codificação retroativa, e o desempenho de predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação compreende: desempenhar predição antecipada no primeiro bloco de codificação com base no preditor de vetor de movimento de avanço alvo para obter o terceiro bloco de predição de codificação antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de codificação retroativa do primeiro bloco de codificação.
7. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de que a obtenção de um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação compreende: desempenhar somatório ponderado no terceiro bloco de predição de codificação antecipada e no terceiro bloco de predição de codificação retroativa para obter o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação antecipada como o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação retroativa como o bloco de predição de codificação alvo do primeiro bloco de codificação.
8. Método para decodificação de imagem através de interpredição, implementado por um aparelho para decodificação de imagem através de interpredição, CARACTERIZADO pelo fato de que compreende: determinar (501) informações de movimento de predição de um primeiro bloco de decodificação, em que as informações de movimento de predição compreendem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; desempenhar (502) predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação, e obter um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de decodificação, em que uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão, em que o segundo bloco de predição de decodificação compreende um segundo bloco de predição de decodificação antecipada e um segundo bloco de predição de decodificação retroativa, e o desempenho de busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de decodificação compreende: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de decodificação antecipada encontrado como o segundo bloco de predição de decodificação antecipada para obter o pelo menos um segundo bloco de predição de decodificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de decodificação retroativa encontrado como o segundo bloco de predição de decodificação retroativa para obter o pelo menos um segundo bloco de predição de decodificação, em que a primeira precisão compreende precisão de pixel inteiro, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel; calcular (504) uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação; desempenhar (505) predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação; e obter (506) um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, e decodificar o primeiro bloco de decodificação com base no bloco de predição de decodificação alvo.
9. Método, de acordo com a reivindicação 8, CARACTERIZADO pelo fato de que as informações de movimento de predição compreendem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento compreende um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição compreende um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
10. Método, de acordo com a reivindicação 9, CARACTERIZADO pelo fato de que o bloco de predição de decodificação inicial compreende um bloco de predição de decodificação inicial antecipada e um bloco de predição de decodificação inicial retroativa, e o desempenho de predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação compreende: desempenhar predição antecipada no primeiro bloco de decodificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de decodificação inicial retroativa do primeiro bloco de decodificação.
11. Método, de acordo com a reivindicação 10, CARACTERIZADO pelo fato de que a obtenção de um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial compreende: desempenhar somatório ponderado no bloco de predição de decodificação inicial antecipada e no bloco de predição de decodificação inicial retroativa para obter o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial antecipada como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial retroativa como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
12. Método, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que o preditor de vetor de movimento alvo compreende um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e o cálculo de uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e uso de um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação compreende: comparar diferenças entre os segundos blocos de predição de decodificação antecipada e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; e/ou comparar diferenças entre os segundos blocos de predição de decodificação retroativa e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
13. Método, de acordo com a reivindicação 12, CARACTERIZADO pelo fato de que o terceiro bloco de predição de decodificação do primeiro bloco de decodificação compreende um terceiro bloco de predição de decodificação antecipada e um terceiro bloco de predição de decodificação retroativa, e o desempenho de predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação compreende: desempenhar predição antecipada no primeiro bloco de decodificação com base no preditor de vetor de movimento de avanço alvo para obter o terceiro bloco de predição de decodificação antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de decodificação retroativa do primeiro bloco de decodificação.
14. Método, de acordo com a reivindicação 13, CARACTERIZADO pelo fato de que a obtenção de um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação compreende: desempenhar somatório ponderado no terceiro bloco de predição de decodificação antecipada e no terceiro bloco de predição de decodificação retroativa para obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação antecipada como o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação retroativa como o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
15. Aparelho para codificação de imagem através de interpredição, CARACTERIZADO pelo fato de que compreende: uma unidade de determinação (1001), configurada para determinar informações de movimento de predição de um primeiro bloco de codificação, em que as informações de movimento de predição compreendem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; uma unidade de processamento (1002), configurada para: desempenhar predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter um bloco de predição de codificação inicial do primeiro bloco de codificação, e obter um primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de codificação, em que uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar um preditor de vetor de movimento entre o primeiro bloco de codificação e um segundo bloco de predição de codificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de codificação; e desempenhar predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de codificação do primeiro bloco de codificação; em que o segundo bloco de predição de codificação compreende um segundo bloco de predição de codificação antecipada e um segundo bloco de predição de codificação retroativa, e ao desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter o pelo menos um segundo bloco de predição de codificação, a unidade de processamento (1002) é especificamente configurada para: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de codificação antecipada encontrado como o segundo bloco de predição de codificação antecipada para obter o pelo menos um segundo bloco de predição de codificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de codificação retroativa encontrado como o segundo bloco de predição de codificação retroativa para obter o pelo menos um segundo bloco de predição de codificação, em que a primeira precisão compreende precisão de pixel inteiro, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel; e uma unidade de codificação (1003), configurada para: obter um bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, e codificar o primeiro bloco de codificação com base no bloco de predição de codificação alvo.
16. Aparelho, de acordo com a reivindicação 15, CARACTERIZADO pelo fato de que as informações de movimento de predição compreendem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento compreende um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição compreende um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
17. Aparelho, de acordo com a reivindicação 16, CARACTERIZADO pelo fato de que o bloco de predição de codificação inicial compreende um bloco de predição de codificação inicial antecipada e um bloco de predição de codificação inicial retroativa, e ao desempenhar predição bidirecional no primeiro bloco de codificação com base nas informações de movimento de predição para obter o bloco de predição de codificação inicial do primeiro bloco de codificação, a unidade de processamento (1002) é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de codificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de codificação inicial antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de codificação inicial retroativa do primeiro bloco de codificação.
18. Aparelho, de acordo com a reivindicação 17, CARACTERIZADO pelo fato de que ao obter o primeiro bloco de predição de codificação do primeiro bloco de codificação com base no bloco de predição de codificação inicial, a unidade de processamento (1002) é especificamente configurada para: desempenhar somatório ponderado no bloco de predição de codificação inicial antecipada e no bloco de predição de codificação inicial retroativa para obter o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial antecipada como o primeiro bloco de predição de codificação do primeiro bloco de codificação; ou usar o bloco de predição de codificação inicial retroativa como o primeiro bloco de predição de codificação do primeiro bloco de codificação.
19. Aparelho, de acordo com a reivindicação 18, CARACTERIZADO pelo fato de que o preditor de vetor de movimento alvo compreende um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e ao calcular a diferença entre o primeiro bloco de predição de codificação e cada segundo bloco de predição de codificação, e usar o preditor de vetor de movimento entre o primeiro bloco de codificação e o segundo bloco de predição de codificação com uma menor diferença como o preditor de vetor de movimento alvo do primeiro bloco de codificação, a unidade de processamento (1002) é especificamente configurada para: comparar diferenças entre os segundos blocos de predição de codificação antecipada e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; e/ou comparar diferenças entre os segundos blocos de predição de codificação retroativa e o primeiro bloco de predição de codificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de codificação e um segundo bloco de predição de codificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
20. Aparelho, de acordo com a reivindicação 19, CARACTERIZADO pelo fato de que o terceiro bloco de predição de codificação do primeiro bloco de codificação compreende um terceiro bloco de predição de codificação antecipada e um terceiro bloco de predição de codificação retroativa, e ao desempenhar predição bidirecional no primeiro bloco de codificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de codificação do primeiro bloco de codificação, a unidade de processamento (1002) é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de codificação com base no preditor de vetor de movimento de avanço alvo para obter o terceiro bloco de predição de codificação antecipada do primeiro bloco de codificação; e desempenhar predição retroativa no primeiro bloco de codificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de codificação retroativa do primeiro bloco de codificação.
21. Aparelho, de acordo com a reivindicação 20, CARACTERIZADO pelo fato de que ao obter o bloco de predição de codificação alvo do primeiro bloco de codificação com base no terceiro bloco de predição de codificação, a unidade de processamento (1002) é especificamente configurada para: desempenhar somatório ponderado no terceiro bloco de predição de codificação antecipada e no terceiro bloco de predição de codificação retroativa para obter o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação antecipada como o bloco de predição de codificação alvo do primeiro bloco de codificação; ou usar o terceiro bloco de predição de codificação retroativa como o bloco de predição de codificação alvo do primeiro bloco de codificação.
22. Aparelho para decodificação de imagem através de interpredição, CARACTERIZADO pelo fato de que compreende: uma unidade de determinação (1201), configurada para determinar informações de movimento de predição de um primeiro bloco de decodificação, em que as informações de movimento de predição compreendem um preditor de vetor de movimento e informações de imagem de referência de predição, e as informações de imagem de referência de predição são usadas para representar um bloco de imagem de referência de predição; uma unidade de processamento (1202), configurada para: desempenhar predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter um bloco de predição de decodificação inicial do primeiro bloco de decodificação, e obter um primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial; desempenhar busca de movimento de primeira precisão no bloco de imagem de referência de predição para obter pelo menos um segundo bloco de predição de decodificação, em que uma localização de busca da busca de movimento é determinada usando-se o preditor de vetor de movimento e a primeira precisão; calcular uma diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar um preditor de vetor de movimento entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação com uma menor diferença como um preditor de vetor de movimento alvo do primeiro bloco de decodificação; e desempenhar predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter um terceiro bloco de predição de decodificação do primeiro bloco de decodificação; em que o segundo bloco de predição de decodificação compreende um segundo bloco de predição de decodificação antecipada e um segundo bloco de predição de decodificação retroativa, e ao desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição com base no preditor de vetor de movimento para obter o pelo menos um segundo bloco de predição de decodificação, a unidade de processamento (1202) é especificamente configurada para: desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição antecipada com base no preditor de vetor de movimento de avanço, e usar cada bloco de predição de decodificação antecipada encontrado como o segundo bloco de predição de decodificação antecipada para obter o pelo menos um segundo bloco de predição de decodificação; e desempenhar busca de movimento da primeira precisão no bloco de imagem de referência de predição retroativa com base no preditor de vetor de movimento de retorno, e usar cada bloco de predição de decodificação retroativa encontrado como o segundo bloco de predição de decodificação retroativa para obter o pelo menos um segundo bloco de predição de decodificação, em que a primeira precisão compreende precisão de pixel inteiro, precisão de 1/2 pixel, precisão de 1/4 de pixel, ou precisão de 1/8 de pixel; e uma unidade de decodificação (1203), configurada para: obter um bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, e decodificar o primeiro bloco de decodificação com base no bloco de predição de decodificação alvo.
23. Aparelho, de acordo com a reivindicação 22, CARACTERIZADO pelo fato de que as informações de movimento de predição compreendem informações de movimento de predição antecipada e informações de movimento de predição retroativa, o preditor de vetor de movimento compreende um preditor de vetor de movimento de avanço e um preditor de vetor de movimento de retorno, e o bloco de imagem de referência de predição compreende um bloco de imagem de referência de predição antecipada e um bloco de imagem de referência de predição retroativa.
24. Aparelho, de acordo com a reivindicação 23, CARACTERIZADO pelo fato de que o bloco de predição de decodificação inicial compreende um bloco de predição de decodificação inicial antecipada e um bloco de predição de decodificação inicial retroativa, e ao desempenhar predição bidirecional no primeiro bloco de decodificação com base nas informações de movimento de predição para obter o bloco de predição de decodificação inicial do primeiro bloco de decodificação, a unidade de processamento (1202) é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de decodificação com base nas informações de movimento de predição antecipada para obter o bloco de predição de decodificação inicial antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base nas informações de movimento de predição retroativa para obter o bloco de predição de decodificação inicial retroativa do primeiro bloco de decodificação.
25. Aparelho, de acordo com a reivindicação 24, CARACTERIZADO pelo fato de que ao obter o primeiro bloco de predição de decodificação do primeiro bloco de decodificação com base no bloco de predição de decodificação inicial, a unidade de processamento (1202) é especificamente configurada para: desempenhar somatório ponderado no bloco de predição de decodificação inicial antecipada e no bloco de predição de decodificação inicial retroativa para obter o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial antecipada como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação; ou usar o bloco de predição de decodificação inicial retroativa como o primeiro bloco de predição de decodificação do primeiro bloco de decodificação.
26. Aparelho, de acordo com a reivindicação 25, CARACTERIZADO pelo fato de que o preditor de vetor de movimento alvo compreende um preditor de vetor de movimento de avanço alvo e um preditor de vetor de movimento de retorno alvo, e ao calcular a diferença entre o primeiro bloco de predição de decodificação e cada segundo bloco de predição de decodificação, e usar o preditor de vetor de movimento entre o primeiro bloco de decodificação e o segundo bloco de predição de decodificação com uma menor diferença como o preditor de vetor de movimento alvo do primeiro bloco de decodificação, a unidade de processamento (1202) é especificamente configurada para: comparar diferenças entre os segundos blocos de predição de decodificação antecipada e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de avanço alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação antecipada com uma menor diferença como o preditor de vetor de movimento alvo; ou comparar diferenças entre os segundos blocos de predição de decodificação retroativa e o primeiro bloco de predição de decodificação, e usar um preditor de vetor de movimento de retorno alvo entre o primeiro bloco de decodificação e um segundo bloco de predição de decodificação retroativa com uma menor diferença como o preditor de vetor de movimento alvo.
27. Aparelho, de acordo com a reivindicação 26, CARACTERIZADO pelo fato de que o terceiro bloco de predição de decodificação do primeiro bloco de decodificação compreende um terceiro bloco de predição de decodificação antecipada e um terceiro bloco de predição de decodificação retroativa, e ao desempenhar predição bidirecional no primeiro bloco de decodificação com base no preditor de vetor de movimento alvo para obter o terceiro bloco de predição de decodificação do primeiro bloco de decodificação, a unidade de processamento (1202) é especificamente configurada para: desempenhar predição antecipada no primeiro bloco de decodificação com base no preditor de vetor de movimento de avanço alvo para obter o terceiro bloco de predição de decodificação antecipada do primeiro bloco de decodificação; e desempenhar predição retroativa no primeiro bloco de decodificação com base no preditor de vetor de movimento de retorno alvo para obter o terceiro bloco de predição de decodificação retroativa do primeiro bloco de decodificação.
28. Aparelho, de acordo com a reivindicação 27, CARACTERIZADO pelo fato de que ao obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação com base no terceiro bloco de predição de decodificação, a unidade de processamento (1202) é especificamente configurada para: desempenhar somatório ponderado no terceiro bloco de predição de decodificação antecipada e no terceiro bloco de predição de decodificação retroativa para obter o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação antecipada como o bloco de predição de decodificação alvo do primeiro bloco de decodificação; ou usar o terceiro bloco de predição de decodificação retroativa como o bloco de predição de decodificação alvo do primeiro bloco de decodificação.
BR112019005678-5A 2016-09-30 2016-09-30 Método e aparelho para codificação e decodificação de imagem através de interpredição BR112019005678B1 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2016/101289 WO2018058622A1 (zh) 2016-09-30 2016-09-30 一种帧间预测的图像编解码方法和装置

Publications (2)

Publication Number Publication Date
BR112019005678A2 BR112019005678A2 (pt) 2019-06-11
BR112019005678B1 true BR112019005678B1 (pt) 2023-12-12

Family

ID=61763050

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019005678-5A BR112019005678B1 (pt) 2016-09-30 2016-09-30 Método e aparelho para codificação e decodificação de imagem através de interpredição

Country Status (11)

Country Link
US (1) US11039144B2 (pt)
EP (1) EP3509304B1 (pt)
JP (1) JP6700489B2 (pt)
KR (2) KR102322437B1 (pt)
CN (1) CN109479143B (pt)
AU (1) AU2016425069B2 (pt)
BR (1) BR112019005678B1 (pt)
MX (1) MX2019003549A (pt)
MY (1) MY194555A (pt)
RU (1) RU2715010C1 (pt)
WO (1) WO2018058622A1 (pt)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019218286A1 (zh) 2018-05-16 2019-11-21 华为技术有限公司 一种视频编解码方法和装置
JP7137008B2 (ja) 2018-06-29 2022-09-13 北京字節跳動網絡技術有限公司 1つまたは複数のルックアップテーブルを使用して、以前コーディングされた動き情報を順に記憶させてそれらを後続のブロックのコーディングに使用する概念
CN110662052B (zh) 2018-06-29 2022-07-08 北京字节跳动网络技术有限公司 更新查找表(lut)的条件
AU2019293670B2 (en) 2018-06-29 2023-06-08 Beijing Bytedance Network Technology Co., Ltd. Update of look up table: FIFO, constrained FIFO
CN114900694A (zh) 2018-06-29 2022-08-12 抖音视界(北京)有限公司 哪个查找表需要更新或不更新
EP3791588A1 (en) 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Checking order of motion candidates in lut
EP3791585A1 (en) 2018-06-29 2021-03-17 Beijing Bytedance Network Technology Co. Ltd. Partial/full pruning when adding a hmvp candidate to merge/amvp
WO2020003270A1 (en) 2018-06-29 2020-01-02 Beijing Bytedance Network Technology Co., Ltd. Number of motion candidates in a look up table to be checked according to mode
CN110662043B (zh) 2018-06-29 2021-12-21 北京字节跳动网络技术有限公司 一种用于处理视频数据的方法、装置和计算机可读介质
CN110677667B (zh) 2018-07-02 2022-06-07 北京字节跳动网络技术有限公司 查找表的使用
EP3811621A4 (en) * 2018-07-06 2022-04-06 HFI Innovation Inc. ACQUIRED MOTION INFORMATION TO DECODE A CURRENT ENCODER UNIT IN A VIDEO ENCODER SYSTEM
CN110858794B (zh) 2018-08-24 2022-11-11 华为技术有限公司 多频段传输方法及装置
EP3840386A4 (en) 2018-09-04 2021-09-22 Huawei Technologies Co., Ltd. METHOD AND DEVICE FOR DETERMINING A REFERENCE FRAME FOR BIDIRECTIONAL INTER-FRAME PREDICTION
WO2020053800A1 (en) 2018-09-12 2020-03-19 Beijing Bytedance Network Technology Co., Ltd. How many hmvp candidates to be checked
AU2019377757A1 (en) * 2018-11-08 2021-06-03 Guangdong Oppo Mobile Telecommunications Corp., Ltd. Image signal encoding/decoding method and apparatus therefor
CN111263152B (zh) 2018-11-30 2021-06-01 华为技术有限公司 视频序列的图像编解码方法和装置
JP7275286B2 (ja) 2019-01-10 2023-05-17 北京字節跳動網絡技術有限公司 Lut更新の起動
CN113383554B (zh) 2019-01-13 2022-12-16 北京字节跳动网络技术有限公司 LUT和共享Merge列表之间的交互
CN113330739A (zh) 2019-01-16 2021-08-31 北京字节跳动网络技术有限公司 Lut中的运动候选的***顺序
CN113615193B (zh) 2019-03-22 2024-06-25 北京字节跳动网络技术有限公司 Merge列表构建和其他工具之间的交互
JP7303330B2 (ja) 2019-04-28 2023-07-04 北京字節跳動網絡技術有限公司 対称動きベクトル差分符号化
CN115037933B (zh) * 2022-08-09 2022-11-18 浙江大华技术股份有限公司 一种帧间预测的方法及设备

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5778097A (en) * 1996-03-07 1998-07-07 Intel Corporation Table-driven bi-directional motion estimation using scratch area and offset valves
ES2665693T3 (es) * 2001-11-06 2018-04-26 Panasonic Intellectual Property Corporation Of America Método de codificación de imágenes en movimiento y método de decodificación de imágenes en movimiento
CN1236624C (zh) * 2003-09-04 2006-01-11 上海大学 多种块模式的快速整像素运动估计方法
EP1578137A2 (en) 2004-03-17 2005-09-21 Matsushita Electric Industrial Co., Ltd. Moving picture coding apparatus with multistep interpolation process
JP2006080925A (ja) * 2004-09-09 2006-03-23 Toshiba Corp 動画符号化装置、動画符号化方法および動画符号化プログラム
EP2595381B1 (en) * 2006-04-28 2016-05-18 NTT DoCoMo, Inc. Image predictive decoding device
JP2008011158A (ja) * 2006-06-29 2008-01-17 Matsushita Electric Ind Co Ltd 動きベクトル探索方法及び動きベクトル探索装置
CN100551073C (zh) * 2006-12-05 2009-10-14 华为技术有限公司 编解码方法及装置、分像素插值处理方法及装置
CN102067601B (zh) 2008-04-11 2014-03-12 汤姆森特许公司 视频编码和解码中模板匹配预测(tmp)的方法和装置
JP2010028220A (ja) * 2008-07-15 2010-02-04 Sony Corp 動きベクトル検出装置、動きベクトル検出方法、画像符号化装置及びプログラム
CN101931803B (zh) * 2009-06-26 2013-01-09 华为技术有限公司 视频图像运动信息获取方法、装置及设备、模板构造方法
CN101860747B (zh) * 2010-03-31 2012-05-23 北京大学 亚像素运动估计***及方法
JP5304708B2 (ja) * 2010-03-31 2013-10-02 株式会社Jvcケンウッド 動画像符号化装置、動画像符号化方法及び動画像符号化プログラム
CN107046644B (zh) * 2010-04-09 2020-03-24 三菱电机株式会社 运动图像编码装置以及运动图像解码装置
CN103503458B (zh) * 2011-01-07 2017-09-22 诺基亚技术有限公司 视频编码中的运动预测
MX2013008691A (es) * 2011-02-10 2013-08-21 Panasonic Corp Metodo de codificacion de imagenes en movimiento, aparato de codificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento, aparato de decodificacion de imagenes en movimiento y aparato de codificacion y decodificacion de imagenes en movimiento.
JP5649523B2 (ja) 2011-06-27 2015-01-07 日本電信電話株式会社 映像符号化方法,装置,映像復号方法,装置およびそれらのプログラム
US9819963B2 (en) * 2011-07-12 2017-11-14 Electronics And Telecommunications Research Institute Inter prediction method and apparatus for same
TWI586155B (zh) * 2011-09-28 2017-06-01 Jvc Kenwood Corp A motion picture decoding apparatus, a motion picture decoding method, and a recording medium
SG11201400294SA (en) * 2011-10-17 2014-09-26 Toshiba Kk Encoding device, decoding device, encoding method, and decoding method
US10200711B2 (en) * 2015-03-27 2019-02-05 Qualcomm Incorporated Motion vector derivation in video coding

Also Published As

Publication number Publication date
EP3509304B1 (en) 2023-11-01
JP2019530362A (ja) 2019-10-17
US20190230362A1 (en) 2019-07-25
KR20190045935A (ko) 2019-05-03
CN109479143A (zh) 2019-03-15
RU2715010C1 (ru) 2020-02-21
EP3509304A1 (en) 2019-07-10
JP6700489B2 (ja) 2020-05-27
AU2016425069A1 (en) 2019-04-11
BR112019005678A2 (pt) 2019-06-11
US11039144B2 (en) 2021-06-15
WO2018058622A1 (zh) 2018-04-05
EP3509304A4 (en) 2019-08-21
KR102322437B1 (ko) 2021-11-05
KR20210021142A (ko) 2021-02-24
KR102219320B1 (ko) 2021-02-23
MY194555A (en) 2022-12-01
MX2019003549A (es) 2019-08-12
CN109479143B (zh) 2020-09-08
AU2016425069B2 (en) 2022-03-03

Similar Documents

Publication Publication Date Title
BR112019005678B1 (pt) Método e aparelho para codificação e decodificação de imagem através de interpredição
KR102448635B1 (ko) 비디오 인코딩 방법, 비디오 디코딩 방법, 및 단말
US20230030845A1 (en) Picture Encoding and Decoding Method and Apparatus for Video Sequence
JP6968228B2 (ja) インター予測を介する画像符号化および復号のための方法および装置
JP7388610B2 (ja) 映像符号化方法、映像復号方法、および端末
WO2018120290A1 (zh) 一种基于模板匹配的预测方法及装置
BR112019006146B1 (pt) Método de codificação de vídeo, método de decodificação de vídeo, e terminal

Legal Events

Date Code Title Description
B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 patent gazette]
B350 Update of information on the portal [chapter 15.35 patent gazette]
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B09A Decision: intention to grant [chapter 9.1 patent gazette]
B16A Patent or certificate of addition of invention granted [chapter 16.1 patent gazette]

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