BR122013019018A2 - aparelho de decodificação de um vetor de movimento - Google Patents

aparelho de decodificação de um vetor de movimento

Info

Publication number
BR122013019018A2
BR122013019018A2 BR122013019018A BR122013019018A BR122013019018A2 BR 122013019018 A2 BR122013019018 A2 BR 122013019018A2 BR 122013019018 A BR122013019018 A BR 122013019018A BR 122013019018 A BR122013019018 A BR 122013019018A BR 122013019018 A2 BR122013019018 A2 BR 122013019018A2
Authority
BR
Brazil
Prior art keywords
motion vector
current block
coding
unit
vector predictor
Prior art date
Application number
BR122013019018A
Other languages
English (en)
Other versions
BR122013019018B1 (pt
Inventor
Kyo-Hyuk Lee
Tammy Lee
Woo-Jin Han
Original Assignee
Samsung Electronics 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 Samsung Electronics Co Ltd filed Critical Samsung Electronics Co Ltd
Publication of BR122013019018A2 publication Critical patent/BR122013019018A2/pt
Publication of BR122013019018B1 publication Critical patent/BR122013019018B1/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • 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
    • 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
    • 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/117Filters, e.g. for pre-processing or post-processing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/124Quantisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • H04N19/147Data rate or code amount at the encoder output according to rate distortion criteria
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/157Assigned coding mode, i.e. the coding mode being predefined or preselected to be further used for selection of another element or parameter
    • H04N19/159Prediction type, e.g. intra-frame, inter-frame or bidirectional frame prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/176Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/503Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving temporal prediction
    • H04N19/51Motion estimation or motion compensation
    • H04N19/513Processing of motion vectors
    • H04N19/517Processing of motion vectors by encoding
    • H04N19/52Processing of motion vectors by encoding by predictive encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/70Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/85Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
    • H04N19/86Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
    • H04N19/865Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness with detection of the former encoding block subdivision in decompressed video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/90Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using coding techniques not provided for in groups H04N19/10-H04N19/85, e.g. fractals
    • H04N19/96Tree coding, e.g. quad-tree 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/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/184Methods 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 bits, e.g. of the compressed video stream

Abstract

aparelho de decodificação de um vetor de movimento. são fornecidos métodos e aparelhos para codificação e decodificação de um vetor de movimento. o método de codificação do vetor de movimento inclui: selecionar, como um modo de codificar informação sobre um previsor de vetor de movimento do bloco atual, um primeiro modo em que informação indicando que o previsor de vetor de movimento dentre pelo menos um previsor de vetor de movimento está codificada ou um segundo modo em que informação indicando a geração do previsor de vetor de movimento com base em blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual está codificada; determinar o previsor de vetor de movimento do bloco atual de acordo com o modo selecionado e codificar a informação sobre o previsor de vetor de movimento do bloco atual; e codificar um vetor de diferença entre o vetor de movimento do bloco atual e o previsor de vetor de movimento do bloco atual.

Description

Este pedido é um pedido dividido do pedido de patente BR 11 2012001514 1 de 13.08.2010 APARELHO DE DECODIFICAÇÃO DE UM VETOR DE MOVIMENTO Campo Técnico Aparelhos e métodos consistentes com modalidades exemplares referem-se a um método e aparelho para codificação de um vetor de movimento, e mais particularmente, a um método e aparelho para codificação de um previsor de vetor de movimento de um bloco atual. Técnica Anterior Um codec, tal como Codificação Avançada de Vídeo (AVC) de Grupo de Especialistas em Imagem com Movimento (MPEG)-4 H.264/MPEG-4 usa vetores de movimento de blocos previamente codificados adjacentes a um bloco atual para predizer um vetor de movimento do bloco atual. Ou seja, um valor médio de vetores de movimento de blocos previamente codificados adjacentes aos lados esquerdo, superior e superior direito de um bloco atual é usado como um previsor de vetor de movimento do bloco atual.
Descrição da Invenção Solução do Problema Modalidades exemplares fornecem um método e aparelho para codificação e decodificação de um vetor de movimento, e um meio de gravação de leitura por computador armazenando um programa de leitura por computador para executar o método.
Efeitos Vantajosos da Invenção De acordo com o presente pedido, um vetor de movimento é codificado de forma eficiente com base em um previsor de vetor de movimento exato mor.
Breve Descrição das Figuras Os aspectos acima e/ou outros se tornarão mais evidentes através da descrição em detalhes das modalidades exemplares com referência às Figuras anexas, em que: A Figura 1 é um diagrama de blocos de um aparelho para codificação de uma imagem de acordo com uma modalidade exemplar. A Figura 2 é um diagrama de blocos de um aparelho para decodif icação de uma imagem de acordo com uma modalidade exemplar. A Figura 3 ilustra unidades de codificação hierárquica de acordo com uma modalidade exemplar. A Figura 4 é um diagrama de blocos de um codificador de imagem com base em uma unidade de codificação, de acordo com uma modalidade exemplar. A Figura 5 é um diagrama de blocos de um decodif icador de imagem com base em uma unidade de codificação, de acordo com uma modalidade exemplar. A Figura 6 ilustra uma unidade de codificação máxima, uma subunidade de codificação e uma unidade de predição de acordo com uma modalidade exemplar. A Figura 7 ilustra uma unidade de codificação e uma unidade de transformação, de acordo com uma modalidade exemplar.
As Figuras 8A e 8B ilustram formas de divisão de uma unidade de codificação, uma unidade de predição e uma unidade de transformação, de acordo com uma modalidade exemplar. A Figura 9 é um diagrama de blocos de um aparelho para codificação de um vetor de movimento, de acordo com uma modalidade exemplar.
As Figuras 10A e 10B ilustram candidatos o previsor de vetor de movimento de um modo explícito, de acordo com uma modalidade exemplar.
As Figuras 11A a 11C ilustram candidatos o previsor de vetor de movimento de um modo explícito de acordo com outra modalidade exemplar. A Figura 12 ilustra um método de geração de um previsor de vetor de movimento em um modo implícito de acordo com uma modalidade exemplar. A Figura 13 é um diagrama de blocos de um aparelho para decodificação de um vetor de movimento de acordo com uma modalidade exemplar. A Figura 14 é um fluxograma de um método de codificação de um vetor de movimento de acordo com uma modalidade exemplar; e A Figura 15 é um fluxograma de um método de decodificação de um vetor de movimento de acordo com uma modalidade exemplar.
Melhor Modo para Realizar a Invenção De acordo com um aspecto de uma modalidade exemplar, é fornecido um método de codificação de um vetor de movimento de um bloco atual, o método incluindo: selecionar, como um modo de codificação da informação sobre um previsor de vetor de movimento do bloco atual, um primeiro modo em que a informação indicando o previsor de vetor de movimento entre pelo menos um previsor de vetor de movimento ê codificada ou um segundo modo em que a informação indicando a geração do previsor de vetor de movimento com base em blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual é codificada; determinar o previsor de vetor de movimento do bloco atual de acordo com o modo selecionado e codificar a informação sobre o previsor de vetor de movimento do bloco atual; e codificar um vetor de diferença entre o vetor de movimento do bloco atual e o previsor de vetor de movimento do bloco atual. A seleção do primeiro ou segundo modo pode incluir selecionar o primeiro ou segundo modo com base em uma profundidade indicando um grau de diminuição de um tamanho de uma unidade de codificação máxima de um quadro ou módulo atual para um tamanho do bloco atual. A seleção do primeiro ou segundo modo pode incluir selecionar o primeiro ou segundo modo em uma unidade de um quadro ou módulo atual incluindo o bloco atual. A seleção do primeiro ou segundo modo pode incluir selecionar o primeiro ou segundo modo com a condição de o bloco atual ser codificado em um modo de salto. O pelo menos um previsor de vetor de movimento pode incluir um primeiro vetor de movimento de um bloco adjacente a um lado esquerdo do bloco atual, um segundo vetor de movimento de um bloco adjacente a um lado superior do bloco atual, e um terceiro vetor de movimento de um bloco adjacente a um lado superior direito do bloco atual. 0 pelo menos um previsor de vetor de movimento pode adicionalmente incluir um valor médio do primeiro vetor de movimento, do segundo vetor de movimento e do terceiro vetor de movimento. O pelo menos um previsor de vetor de movimento pode adicionalmente incluir um previsor de vetor de movimento gerado com base em um vetor de movimento de um bloco co-localizado com o bloco atual em um quadro de referência e uma distância temporal entre o quadro de referência e um quadro atual. A informação indicando a geração do previsor de vetor de movimento com base em blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual pode ser a informação indicando a geração do previsor de vetor de movimento do bloco atual com base em um valor médio de um primeiro vetor de movimento de um bloco adjacente a um lado esquerdo do bloco atual, um segundo vetor de movimento de um bloco adjacente a um lado superior do bloco atual, e, um terceiro vetor de movimento de um bloco adjacente a um lado superior direito do bloco atual. A informação indicando a geração do previsor de vetor de movimento com base em blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual pode ser a informação indicando a geração do previsor de vetor de movimento do bloco atual com base em um vetor de movimento gerado através da busca por um quadro de referência usando pixels incluídos na área previamente codificada adjacente ao bloco atual.
De acordo com um aspecto de outra modalidade exemplar, é fornecido um aparelho para codificação de um vetor de movimento de um bloco atual, o aparelho incluindo: um previsor que seleciona, como um modo de codificação da informação sobre um previsor de vetor de movimento do bloco atual, um primeiro modo em que a informação indicando o previsor de vetor de movimento entre pelo menos um previsor de vetor de movimento é codificada ou um segundo modo em que a informação indicando a geração do previsor de vetor de movimento com base em blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual é codificada, e que determina o previsor de vetor de movimento do bloco atual com base no modo selecionado; um primeiro codificador que codifica a informação sobre o previsor de vetor de movimento do bloco atual determinado com base no modo selecionado; e um segundo codificador que codifica um vetor de diferença entre um vetor de movimento do bloco atual e o previsor de vetor de movimento do bloco atual.
De acordo com um aspecto de outra modalidade exemplar, é fornecido um método de decodificação de um vetor de movimento de um bloco atual, o método incluindo: decodificar a informação sobre um previsor de vetor de movimento do bloco atual codificada de acordo com um modo selecionado entre um primeiro e segundo modo; decodificar um vetor de diferença entre o vetor de movimento do bloco atual e o previsor de vetor de movimento do bloco atual; gerar o previsor de vetor de movimento do bloco atual com base na informação decodificada sobre o previsor de vetor de movimento do bloco atual; e restaurar o vetor de movimento do bloco atual com base no previsor de vetor de movimento e no vetor de diferença, em que o primeiro modo é um modo em que a informação indicando o previsor de vetor de movimento entre pelo menos um previsor de vetor de movimento é codificada e o segundo modo é um modo em que a informação indicando a geração do previsor de vetor de movimento com base em blocos ou pixels incluídos em uma área previamente decodificada adjacente ao bloco atual é codificada.
De acordo com um aspecto de outra modalidade exemplar, é fornecido um aparelho para decodificação de um vetor de movimento de um bloco atual, o aparelho incluindo: um primeiro decodificador que decodifica a informação sobre um previsor de vetor de movimento do bloco atual codificada de acordo com um modo selecionado entre um primeiro e segundo modo; um segundo decodificador que decodifica um vetor de diferença entre o vetor de movimento do bloco atual e o previsor de vetor de movimento do bloco atual; um previsor que gera o previsor de vetor de movimento do bloco atual com base na informação decodificada sobre o previsor de vetor de movimento do bloco atual; e uma unidade de restauração de vetor de movimento que restaura o vetor de movimento do bloco atual com base no previsor de vetor de movimento e no vetor de diferença, em que o primeiro modo é um modo em que a informação indicando o previsor de vetor de movimento entre pelo menos um previsor de vetor de movimento é codificada e o segundo modo é um modo em que a informação indicando a geração do previsor de vetor de movimento com base em blocos ou pixels incluídos em uma área previamente decodificada adjacente ao bloco atual é codificada.
De acordo com um aspecto de outra modalidade exemplar, é fornecido um meio de gravação de leitura por computador armazenando um programa de leitura por computador para executar o método de codificação de um vetor de movimento e o método de deeodificação de um vetor de movimento.
Modo para a Invenção Modalidades exemplares serão neste momento descritas mais detalhadamente com referência às Figuras anexas, em que números de referência referem-se aos elementos listados. Expressões, tal como "pelo menos um de," quando precedem uma lista de elementos, modificam toda a lista de elementos e não modificam os elementos individuais da lista. Na presente especificação, uma "imagem" pode indicar uma imagem parada para um vídeo ou uma imagem em movimento, isto é, o vídeo em si. A Figura 1 é um diagrama de blocos de um aparelho 100 para codificação de uma imagem de acordo com uma modalidade exemplar. Com referência à Figura 1, o aparelho 100 inclui um divisor de unidade de codificação máxima 110, um determinador de profundidade de codificação 120, um codificador de dados de imagem 130 e um codificador de informação de codificação 140. O divisor de unidade de codificação máxima 110 pode dividir um quadro ou módulo atual com base em uma unidade de codificação máxima que é uma unidade de codificação de um tamanho maior. Isto é, o divisor de unidade de codificação máxima 110 pode dividir o quadro ou módulo atual para obter pelo menos uma unidade de codificação máxima.
De acordo com uma modalidade exemplar, uma unidade de codificação pode ser representada usando uma unidade de codificação máxima e uma profundidade. Conforme descrito acima, a unidade de codificação máxima indica uma unidade de codificação com o maior tamanho entre as unidades de codificação do quadro atual, e a profundidade indica o tamanho de uma subunidade de codificação obtida hierarquicamente através da diminuição da unidade de codificação. A medida que a profundidade aumenta, a unidade de codificação pode diminuir de uma unidade de codificação máxima para uma unidade de codificação mínima, em que uma profundidade da unidade de codificação máxima é definida como uma profundidade mínima e uma profundidade da unidade de codificação mínima é definida como uma profundidade máxima. Uma vez que o tamanho da unidade de codificação diminui de uma unidade de codificação máxima conforme a profundidade aumenta, uma subunidade de codificação de uma k-esima profundidade pode incluir uma pluralidade de subunidades de codificação de uma (k+n)-ésima profundidade (em que k e n são números inteiros iguais ou maiores do que 1) · De acordo com um aumento do tamanho de um quadro a ser codificado, codificar uma imagem em uma unidade de codificação maior pode gerar uma taxa de compressão de imagem maior. Contudo, se uma unidade de codificação maior e fixada, uma imagem pode nao ser eficientemente codificada por apresentar características de imagem em constante mudança.
Por exemplo, quando uma área plana, tal como o mar ou o céu, é codificada, quanto maior uma unidade de codificação, maior a possibilidade de aumento da taxa de compressão. No entanto, quando uma área complexa, tal como pessoas ou construções, é codificada, quanto menor uma unidade de codificação, maior a possibilidade de aumento da taxa de compressão.
Assim, de acordo com uma modalidade exemplar, uma unidade de codificação de imagem máxima diferente e uma profundidade máxima diferente são estabelecidas para cada quadro ou módulo. Uma vez que uma profundidade máxima indica o número máximo de vezes pelo qual uma unidade de codificação pode diminuir, o tamanho de cada unidade de codificação mínima incluída em uma unidade de codificação de imagem máxima pode ser variavelmente estabelecido de acordo com uma profundidade maxima. O determinador de profundidade de codificação 120 determina uma profundidade máxima. Por exemplo, a profundidade máxima pode ser determinada com base no cálculo de custo Taxa-Distorção (R-D). Além disso, a profundidade máxima pode ser determinada de forma diferente para cada quadro ou módulo ou para cada unidade de codificação máxima. A profundidade máxima determinada é fornecida para o codificador de informação de codificação 140, e dados de imagem de acordo com unidades de codificação máxima são fornecidos para o codificador de dados de imagem 130. A profundidade máxima indica uma unidade de codificação com o menor tamanho que pode estar incluída em uma unidade de codificação máxima, ou seja, uma unidade de codificação mínima. Em outras palavras, uma unidade de codificação máxima pode ser dividida em subunidades de codificação com tamanhos diferentes de acordo com profundidades diferentes. Isto será descrito em detalhes mais adiante com referência às Figuras 8A e 8B. Além disso, as subunidades de codificação com tamanhos diferentes, que estão incluídas na unidade de codificação máxima, podem ser preditas ou transformadas com base em unidades de processamento com tamanhos diferentes. Em outras palavras, o aparelho 100 pode realizar uma pluralidade de operações de processamento para codificação de imagem com base em unidades de processamento com vários tamanhos e formas. Para codificar dados de imagem, operações de processamento, tais como predição, transformação e codificação de entropia são realizadas, em que unidades de processamento com o mesmo tamanho podem ser usadas para cada operação ou unidades de processamento com tamanhos diferentes podem ser usadas para cada operação.
Por exemplo, o aparelho 100 pode selecionar uma unidade de processamento que é diferente de uma unidade de codificação para predizer a unidade de codificação. Quando o tamanho de uma unidade de codificação é 2Nx2N (em que N é um inteiro positivo), unidades de processamento para predição podem ser 2Nx2N, 2NxN, Nx2N, e NxN. Em outras palavras, predição de movimento pode ser realizada com base em uma unidade de processamento com uma forma pela qual pelo menos uma de altura e largura de uma unidade de codificação é igualmente dividida por dois. Doravante, uma unidade de processamento que e a base da predição e referida como uma unidade de predição.
Um modo de predição pode ser pelo menos um de um modo intra, um modo inter e um modo de salto, e um modo de predição específico pode ser realizado somente por uma unidade de predição com um tamanho ou forma específica. Por exemplo, o modo intra pode ser realizado somente por unidades de predição com tamanhos de 2Nx2N e NxN, as quais possuem a forma de um quadrado. Além disso, o modo de salto pode ser realizado somente por uma unidade de predição com um tamanho de 2Nx2N. Se houver uma pluralidade de unidades de predição em uma unidade de codificação, o modo de predição com os mínimos erros de codificação pode ser selecionado após a realização de predição por cada unidade de predição.
Alternativamente, o aparelho 100 pode realizar transformação de frequência em dados de imagem com base em uma unidade de processamento com um tamanho diferente de uma unidade de codificação. Para a transformação de frequência na unidade de codificação, a transformação de frequência pode ser realizada com base em uma unidade de processamento com um tamanho igual ou menor do que aquele da unidade de codificação. Doravante, uma unidade de processamento que é a base da transformação de frequência é referida como uma unidade de transformação. A transformação de frequência pode ser uma Transformada Discreta de Cosseno (DCT) ou uma Transformada de Karhunen-Loeve (KLT). O determinador de profundidade de codificação 120 pode determinar subunidades de codificação incluídas em uma unidade de codificação máxima usando otimização R-D com base em um multiplicador de Lagrange. Em outras palavras, o determinador de profundidade de codificação 120 pode determinar qual forma uma pluralidade de subunidades de codificação divididas da unidade de codificação máxima possui, em que a pluralidade de subunidades de codificação possui tamanhos diferentes de acordo com suas profundidades. O codificador de dados de imagem 130 gera um fluxo contínuo de dados através da codificação da unidade de codificação máxima com base nas formas de divisão determinadas pelo determinador de profundidade de codificação 120. O codificador de informação de codificação 140 codifica a informação sobre um modo de codificação da unidade de codificação máxima determinada pelo determinador de profundidade de codificação 120. Em outras palavras, o codificador de informação de codificação 140 gera um fluxo contínuo de dados através da codificação da informação sobre uma forma de divisão da unidade de codificação máxima, informação sobre a profundidade máxima, e informação sobre um modo de codificação de uma subunidade de codificação para cada profundidade. A informação sobre o modo de codificação da subunidade de codificação pode incluir pelo menos uma de informação sobre uma unidade de predição da subunidade de codificação, informação sobre um modo de predição para cada unidade de predição, e informação sobre uma unidade de transformação da subunidade de codificação.
Uma vez que há subunidade s de codificação com tamanhos diferentes para cada unidade de codificação máxima e a informação sobre um modo de codificação é determinada para cada subunidade de codificação, a informação sobre pelo menos um modo de codificação pode ser determinada para uma unidade de codificação máxima. O aparelho 100 pode gerar subunidades de codificação dividindo igualmente a altura e largura de uma unidade de codificação máxima por dois de acordo com um aumento de profundidade. Ou seja, quando o tamanho de uma unidade de codificação de uma k-ésima profundidade é 2Nx2N, o tamanho de uma unidade de codificação de uma (k+1)-ésima profundidade pode ser NxN.
Assim, o aparelho 100, de acordo com uma modalidade exemplar, pode determinar uma forma de divisão ideal para cada unidade de codificação máxima com base em tamanhos de unidades de codificação máxima e uma profundidade máxima, tendo em consideração as características de imagem. Através do ajuste variável do tamanho de uma unidade de codificação máxima considerando as características de imagem e codificando uma imagem através da divisão de uma unidade de codificação máxima em subunidades de codificação de diferentes profundidades, imagens com diferentes resoluções podem ser codificadas de forma mais eficiente. A Figura 2 é um diagrama de blocos de um aparelho 200 para decodif icação de uma imagem de acordo com uma modalidade exemplar. Com referência à Figura 2, o aparelho 200 inclui uma unidade de aquisição de dados de imagem 210, um extrator de informação de codificação 220, e um decodificador de dados de imagem 230. A unidade de aquisição de dados de imagem 210 obtém os dados de imagem de acordo com unidades de codificação máxima através da análise de um fluxo contínuo de dados recebido pelo aparelho 200 e envia os dados de imagem para o decodificador de dados de imagem 230. A unidade de aquisição de dados de imagem 210 pode extrair a informação sobre uma unidade de codificação máxima de um quadro ou módulo atual de um cabeçalho do quadro ou módulo atual. Em outras palavras, a unidade de aquisição de dados de imagem 210 divide o fluxo contínuo de dados na unidade de codificação máxima para que o decodificador de dados de imagem 230 possa decodificar os dados de imagem de acordo com unidades de codificação máxima. O extrator de informação de codificação 220 extrai a informação sobre uma unidade de codificação máxima, uma profundidade máxima, uma forma de divisão da unidade de codificação máxima, e um modo de codificação de subunidades de codificação através da análise do fluxo contínuo de dados recebido pelo aparelho 200. Por exemplo, o extrator de informação de codificação 220 pode extrair as informações descritas acima do cabeçalho do quadro atual. A informação sobre a forma de divisão e a informação sobre o modo de codificação são fornecidas para o decodificador de dados de imagem 230. A informação sobre a forma de divisão da unidade de codificação máxima pode incluir a informação sobre οηΚητνΐ HsaHokC! Ho ρπΗΐ -Ρ-ΐ ranãn nnm hamarihnQ ΗΊ FoTAntOG Ho O Ulik/ vlll JL vlClvlC· O tlC v» t/vlx JL JL vCL γCl\/ v» v-Jlll L, CliLlClllilvJ»3 Ul JL JL. Ç JL νΐΐΐ ί>C í3> \J>C acordo com profundidades incluídas na unidade de codificação máxima, e a informação sobre o modo de codificação pode incluir pelo menos uma de informação sobre uma unidade de predição de acordo com uma subunidade de codificação, informação sobre um modo de predição, e informação sobre uma unidade de transformação. 0 decodificador de dados de imagem 230 restaura o quadro atual através da decodificação de dados de imagem de cada unidade de codificação máxima com base nas informações extraídas pelo extrator de informação de codificação 220. O decodificador de dados de imagem 230 pode decodificar as subunidades de codificação incluídas em uma unidade de codificação máxima com base na informação sobre a forma de divisão da unidade de codificação máxima. Um processo de decodificação pode incluir pelo menos um de um processo de predição incluindo predição intra e compensação de movimento, e um processo de transformação inversa.
Além disso, o decodif icador de dados de imagem 23 0 pode realizar predição intra ou predição inter com base na informação sobre a unidade de predição e na informação sobre o modo de predição, a fim de predizer uma unidade de predição. O decodificador de dados de imagem 230 também pode realizar transformação inversa para cada subunidade de codificação com base na informação sobre a unidade de transformação de uma subunidade de codificação. A Figura 3 ilustra unidades de codificação hierárquica de acordo com uma modalidade exemplar. Com referência à Figura 3, as unidades de codificação hierárquica exemplares incluem unidades de codificação cujos tamanhos são 64x64, 32x32, 16x16, 8x8 e 4x4. Além disso, unidades de codificação cujos tamanhos são 64x32, 32x64, 32x16, 16x32, 16x8, 8x16, 8x4 e 4x8 também podem existir.
Na modalidade exemplar ilustrada na Figura 3, em um primeiro momento, para dados de imagem 310 cuja resolução é de 1920x1080, o tamanho de uma unidade de codificação máxima é fixado em 64x64 e uma profundidade máxima é fixada em 2. Em um segundo momento, para dados de imagem 320 cuja resolução é de 1920x1080, o tamanho de uma unidade de codificação máxima é fixado em 64x64 e uma profundidade máxima é fixada em 3. Em um terceiro momento, para dados de imagem 330 cuja resolução é de 352x288, o tamanho de uma unidade de codificação máxima é fixado em 16x16 e uma profundidade máxima é fixada em 1.
Quando a resolução é alta ou a quantidade de dados é grande, um tamanho máximo de uma unidade de codificação pode ser relativamente grande para aumentar uma taxa de compressão e refletir exatamente as características de imagem. Assim, para os dados de imagem 310 e 32 0, dos primeiro e segundo momentos, com resolução maior do que os dados de imagem 33 0 do terceiro momento, 64x64 pode ser selecionado como o tamanho da unxdade de codificação máxima. A profundidade máxima indica o número total de camadas nas unidades de codificação hierárquica. Uma vez que a profundidade máxima dos dados de imagem 310 do primeiro momento é 2, uma unidade de codificação 315 dos dados de imagem 310 pode incluir uma unidade de codificação máxima cujo tamanho do eixo mais longo é 64 e subunidades de codificação cujos tamanhos dos eixos mais longos são 32 e 16, de acordo com um aumento de uma profundidade.
Por outro lado, uma vez que a profundidade máxima dos dados de imagem 33 0 do terceiro momento é 1, uma unidade de codificação 335 dos dados de imagem 33 0 pode incluir uma unidade de codificação máxima cujo tamanho do eixo mais longo é 16 e unidades de codificação cujos tamanhos dos eixos mais longos são 8, de acordo com um aumento de uma profundidade.
No entanto, uma vez que a profundidade máxima dos dados de imagem 320 do segundo momento é 3, uma unidade de codificação 325 dos dados de imagem 320 pode incluir uma unidade de codificação máxima cujo tamanho do eixo mais longo é 64 e subunidades de codificação cujos tamanhos dos eixos mais longos são 32, 16 e 8, de acordo com um aumento de uma profundidade. Uma vez que uma imagem é codificada com base em uma subunidade de codificação menor conforme um aumento da profundidade, modalidades exemplares são adequadas para codificação de uma imagem incluindo mais cenas minuto. A Figura 4 é um diagrama de blocos de um codificador de imagem 400 com base em uma unidade de codificação de acordo com uma modalidade exemplar. Com referência à Figura 4, um previsor intra 410 realiza predição intra em unidades de predição do modo intra em um quadro atual 405, e um estimador de movimento 420 e um compensador de movimento 425 realizam predição inter e compensação de movimento em unidades de predição do modo inter usando o quadro atual 405 e um quadro de referência 495. ' Valores residuais são gerados com base nas unidades de predição e emitidos pelo previsor intra 410, estimador de movimento 420 e compensador de movimento 425. Os valores residuais gerados são emitidos como coeficientes de transformação quantizados através da passagem por um transformador 430 e um quantizador 440.
Os coeficientes de transformação quantizados são restaurados para valores residuais através da passagem por um quantizador inverso 460 e um transformador inverso 470. Os valores residuais restaurados são posteriormente processados através da passagem por uma unidade de desbloqueio 480 e uma unidade de circuito de filtragem 490, e emitidos como o quadro de referência 495. Os coeficientes de transformação quantizados podem ser emitidos como um fluxo contínuo de dados 455 através da passagem por um codificador de entropia 450.
Para realizar codificação com base em um método de codificação de acordo com uma modalidade exemplar, componentes do codificador de imagem 400, ou seja, o previsor intra 410, o estimador de movimento 420, o compensador de movimento 425, o transformador 430, o quantizador 440, o codificador de entropia 450, o quantizador inverso 460, o transformador inverso 470, a unidade de desbloqueio 480 e a unidade de circuito de filtragem 490, realizam processos de codificação de imagem com base em uma unidade de codificação máxima, uma subunidade de codificação de acordo com profundidades, uma unidade de predição e uma unidade de transformação. A Figura 5 é um diagrama de blocos de um decodificador de imagem 500 com base em uma unidade de codificação de acordo com uma modalidade exemplar. Com referência à Figura 5, um fluxo contínuo de dados 505 passa por um analisador 510 para que os dados de imagem codificados sejam decodificados e informações de codificação usadas para decodificação sejam analisadas. Os dados de imagem codificados são emitidos como dados quantizados inversos através da passagem por um decodificador de entropia 520 e um quantizador inverso 530, e restaurados para valores residuais através da passagem por um transformador inverso 540. Os valores residuais são restaurados de acordo com unidades de codificação, sendo adicionados a um resultado de predição intra de um previsor intra 550 ou a um resultado de compensação de movimento de um compensador de movimento 560. As unidades de codificação restauradas são usadas para a predição de unidades de codificação subsequentes ou um quadro subsequente, através da passagem por uma unidade de desbloqueio 570 e uma unidade de circuito de filtragem 580.
Para realizar decodificação com base em um método de decodificação de acordo com uma modalidade exemplar, componentes do decodificador de imagem 500, ou seja, o analisador 510, o decodificador de entropia 520, o quantizador inverso 530, o transformador inverso 540, o previsor intra 550, o compensador de movimento 560, a unidade de desbloqueio 570 e a unidade de circuito de filtragem 580, realizam processos de decodificação de imagem com base em uma unidade de codificação máxima, uma subunidade de codificação de acordo com profundidades, uma unidade de predição e uma unidade de transformação.
Em particular, o previsor intra 550 e o compensador de movimento 560 determinam uma unidade de predição e um modo de predição em uma subunidade de codificação considerando uma unidade de codificação máxima e uma profundidade, e o transformador inverso 540 realiza transformação inversa considerando o tamanho de uma unidade de transformação. A Figura 6 ilustra uma unidade de codificação máxima, uma subunidade de codificação e uma unidade de predição de acordo com uma modalidade exemplar.
Conforme descrito acima, o aparelho de codificação 100 e o aparelho de decodificação 200, de acordo com uma ou mais modalidades exemplares, usam unidades de codificação hierárquica para realizar codificação e decodificação, tendo em consideração as características de imagem. Uma unidade de codificação máxima e uma profundidade máxima podem ser adaptativamente estabelecidas de acordo com as características de imagem ou estabelecidas de forma variável de acordo com as exigências de um usuário.
Com referência à Figura 6, uma estrutura de unidade de codificação hierárquica 600, de acordo com uma modalidade exemplar, ilustra uma unidade de codificação máxima 610 cujas altura e largura são 64 e profundidade máxima é 4. Uma profundidade aumenta ao longo de um eixo vertical da estrutura de unidade de codificação hierárquica 600, e conforme a profundidade aumenta, as alturas e larguras das subunidades de codificação 620 a 650 diminuem. Unidades de predição da unidade de codificação máxima 610 e das subunidades de codificação 620 a 650 são mostradas ao longo de um eixo horizontal da estrutura de unidade de codificação hierárquica 600. A unidade de codificação máxima 610 possui uma profundidade de 0 e um tamanho, ou seja, altura e largura, de 64x64. A profundidade aumenta ao longo do eixo vertical, de tal forma que há uma subunidade de codificação 620 cujo tamanho é 32x32 e profundidade é 1, uma subunidade de codificação 630 cujo tamanho é 16x16 e profundidade é 2, uma subunidade de codificação 640 cujo tamanho é 8x8 e profundidade é 3 e uma subunidade de codificação 650 cujo tamanho é 4x4 e profundidade é 4. A subunidade de codificação 650 cujo tamanho é 4x4 e profundidade é 4 é uma unidade de codificação mínima. A unidade de codificação mínima 650 pode ser dividida em unidades de predição, cada uma das quais sendo menor do que a unidade de codificação mínima.
Na modalidade exemplar ilustrada na Figura 6, exemplos de uma unidade de predição são mostrados ao longo do eixo horizontal de acordo com cada profundidade. Isto é, uma unidade de predição da unidade de codificação máxima 610 cuja profundidade é 0 pode ser uma unidade de predição cujo tamanho é igual ao da unidade de codificação 610, ou seja, 64x64, ou uma unidade de predição 612 cujo tamanho é 64x32, uma unidade de predição 614 cujo tamanho é 32x64, ou uma unidade de predição 616 cujo tamanho é 32x32, as quais possuem um tamanho menor do que a unidade de codificação 610 cujo tamanho é 64x64.
Uma unidade de predição da unidade de codificação 620 cuja profundidade é 1 e tamanho é 32x32 pode ser uma unidade de predição cujo tamanho é igual ao da unidade de codificação 620, ou seja, 32x32, ou uma unidade de predição 622 cujo tamanho é 32x16, uma unidade de predição 624 cujo tamanho é 16x32, ou uma unidade de predição 626 cujo tamanho é 16x16, as quais possuem um tamanho menor do que a unidade de codificação 620 cujo tamanho é 32x32.
Uma unidade de predição da unidade de codificação 63 0 cuja profundidade é 2 e tamanho é 16x16 pode ser uma unidade de predição cujo tamanho é igual ao da unidade de codificação 630, ou seja, 16x16, ou uma unidade de predição 632 cujo tamanho é 16x8, uma unidade de predição 634 cujo tamanho é 8x16, ou uma unidade de predição 636 cujo tamanho é 8x8, as quais possuem um tamanho menor do que a unidade de codificação 630 cujo tamanho é 16x16.
Uma unidade de predição da unidade de codificação 640 cuja profundidade é 3 e tamanho é 8x8 pode ser uma unidade de predição cujo tamanho é igual ao da unidade de codificação 640, ou seja, 8x8, ou uma unidade de predição 642 cujo tamanho é 8x4, uma unidade de predição 644 cujo tamanho é 4x8, ou uma unidade de predição 646 cujo tamanho é 4x4, as quais possuem um tamanho menor do que a unidade de codificação 640 cujo tamanho é 8x8. A unidade de codificação 650 cuja profundidade é 4 e tamanho é 4x4 é uma unidade de codificação mínima e uma unidade de codificação de uma profundidade máxima. Uma unidade de predição da unidade de codificação 650 pode ser uma unidade de predição 650 cujo tamanho é 4x4, uma unidade de predição 652 com um tamanho de 4x2, uma unidade de predição 654 com um tamanho de 2x4, ou uma unidade de predição 656 com um tamanho de 2x2. A Figura 7 ilustra uma unidade de codificação e uma unidade de transformação de acordo com uma modalidade exemplar. O aparelho de codificação 100 e o aparelho de decodificação 2 00, de acordo com uma ou mais modalidades exemplares, realizam codificação somente com uma unidade de codificação máxima ou com subunidades de codificação que são iguais ou menores do que a unidade de codificação máxima e divididas da unidade de codificação máxima.
No processo de codificação, o tamanho de uma unidade de transformação para transformação de frequência é selecionado para que não seja maior do que aquele de uma unidade de codificação correspondente. Por exemplo, quando uma unidade de codificação atual 710 possui um tamanho de 64x64, a transformação de frequência pode ser realizada usando uma unidade de transformação 720 com um tamanho de 32x32.
As Figuras 8A e 8B ilustram formas de divisão de uma unidade de codificação, uma unidade de predição e uma unidade de transformação de acordo com uma modalidade exemplar. A Figura 8A ilustra uma unidade de codificação e uma unidade de predição de acordo com uma modalidade exemplar. ' Um lado esquerdo da Figura 8A mostra uma forma de divisão selecionada por um aparelho de codificação 100 de acordo com uma modalidade exemplar, a fim de codificar uma unidade de codificação máxima 810. O aparelho 100 divide a unidade de codificação máxima 810 em várias formas, realiza codificação e seleciona uma forma de divisão ideal comparando os resultados de codificação das várias formas de divisão uns com os outros com base no custo R-D. Embora seja ideal que a unidade de codificação máxima 810 seja codificada dessa forma, a unidade de codificação máxima 810 pode ser codificada sem dividir a unidade de codificação máxima 810, conforme ilustrado nas Figuras 8A e 8B.
Referindo-se ao lado esquerdo da Figura 8A, a unidade de codificação máxima 810, cuja profundidade é 0, é codificada pela divisão da unidade de codificação máxima em subunidades de codificação cujas profundidades são iguais ou maiores do que 1. Ou seja, a unidade de codificação máxima 810 é dividida em 4 subunidades de codificação cujas profundidades são 1, e todas ou algumas das subunidades de codificação, cujas profundidades são 1, são divididas em subunidades de codificação cujas profundidades são 2.
Uma subunidade de codificação localizada em um lado superior direito e uma subunidade de codificação localizada em um lado inferior esquerdo entre as subunidades de codificação cujas profundidades são 1, são divididas em subunidades de codificação cujas profundidades são iguais ou maiores do que 2. Algumas das subunidades de codificação cujas profundidades são iguais ou maiores do que 2 podem ser divididas em subunidades de codificação cujas profundidades são iguais ou maiores do que 3. O lado direito da Figura 8A mostra uma forma de divisão de uma unidade de predição para a unidade de codificação máxima 810. Referindo-se ao lado direito da Figura 8A, uma unidade de predição 860 para a unidade de codificação máxima 810 pode ser dividida de forma diferente da unidade de codificação máxima 810. Em outras palavras, uma unidade de predição para cada uma das subunidades de codificação pode ser menor do que uma subunidade de codificação correspondente.
Por exemplo, uma unidade de predição para uma subunidade de codificação 854 localizada em um lado inferior direito entre as subunidades de codificação cujas profundidades são 1, pode ser menor do que a subunidade de codificação 854. Além disso, unidades de predição para algumas subunidades de codificação 814, 816, 850 e 852 de subunidades de codificação 814, 816, 818, 828, 850 e 852, cujas profundidades são 2, podem ser menores do que as subunidades de codificação 814, 816, 850 e 852, respectivamente. Além disso, unidades de predição para subunidades de codificação 822, 832 e 848, cujas profundidades são 3, podem ser menores do que as subunidades de codificação 822, 832 e 848, respectivamente. As unidades de predição podem conter uma forma pela qual as respectivas subunidades de codificação são igualmente divididas por dois em uma direção de altura ou largura ou possuem uma forma pela qual as respectivas subunidades de codificação são igualmente divididas por quatro em direções de altura e largura. A Figura 8B ilustra uma unidade de predição e uma unidade de transformação de acordo com uma modalidade exemplar. Um lado esquerdo da Figura 8B mostra uma forma de divisão de uma unidade de predição para a unidade de codificação máxima 810 mostrada no lado direito da Figura 8A, e um lado direito da Figura 8B mostra uma forma de divisão de uma unidade de transformação da unidade de codificação máxima 810.
Referindo-se ao lado direito da Figura 8B, uma forma de divisão de uma unidade de transformação 87 0 pode ser estabelecida de forma diferente da unidade de predição 860. Por exemplo, embora uma unidade de predição para a unidade de codificação 854, cuja profundidade é 1, seja selecionada com uma forma pela qual a altura da unidade de codificação 854 é igualmente dividida por dois, uma unidade de transformação pode ser selecionada com o mesmo tamanho da unidade de codificação 854. Da mesma forma, embora unidades de predição para unidades de codificação 814 e 850, cujas profundidades são 2, sejam selecionadas com uma forma pela qual a altura de cada uma das unidades de codificação 814 e 850 é igualmente dividida por dois, uma unidade de transformação pode ser selecionada com o mesmo tamanho do tamanho original de cada uma das unidades de codificação 814 e 850.
Uma unidade de transformação pode ser selecionada com um tamanho menor do que uma unidade de predição. Por exemplo, quando uma unidade de predição para a unidade de codificação 852, cuja profundidade é 2, é selecionada com uma forma pela qual a largura da unidade de codificação 852 é igualmente dividida por dois, uma unidade de transformação pode ser selecionada com uma forma pela qual a unidade de codificação 852 é igualmente dividida por quatro em direções de altura e largura, a qual possui um tamanho menor do que a forma da unidade de predição. A Figura 9 é um diagrama de blocos de um aparelho 900 para codificação de um vetor de movimento de acordo com uma modalidade exemplar. O aparelho 900 para codificação de um vetor de movimento pode ser incluído no aparelho 100 descrito acima com referência à Figura 1 ou no codificador de imagem 400 descrito acima com referência à Figura 4. Com referência à Figura 9, o aparelho de codificação de vetor de movimento 900 inclui um previsor 910, um primeiro codificador 920 e um segundo codificador 930. A fim de decodificar um bloco codificado usando predição inter, ou seja, predição inter-quadro, a informação sobre um vetor de movimento indicando uma diferença de posição entre um bloco atual e um bloco semelhante em um quadro de referência é usada. Assim, a informação sobre vetores de movimento é codificada e inserida em um fluxo contínuo de dados em um processo de codificação de imagem. No entanto, se a informação sobre vetores de movimento é codificada e inserida dessa forma, um overhead para codificação da informação sobre vetores de movimento aumenta, diminuindo assim uma taxa de compressão de dados de imagem.
Portanto, em um processo de codificação de imagem, a informação sobre um vetor de movimento é comprimida através da predição de um vetor de movimento de um bloco atual, codificando somente um vetor diferencial entre um previsor de vetor de movimento gerado como um resultado de predição e um vetor de movimento original, e inserindo o vetor diferencial codificado em um fluxo contínuo de dados. A Figura 9 ilustra um aparelho 900 para codificação de um vetor de movimento que usa tal previsor de vetor de movimento.
Com referência à Figura 9, o previsor 910 determina se um vetor de movimento de um bloco atual é codificado por predição com base em um modo explícito ou um modo implícito.
Conforme descrito acima, um codec, tal como 4 H.264/MPEG-4 AVC MPEG, usa vetores de movimento de blocos previamente codificados adjacentes a um bloco atual para predizer um vetor de movimento do bloco atual. Ou seja, um valor médio de vetores de movimento de blocos previamente codificados adjacentes aos lados esquerdo, superior e superior direito do bloco atual é usado como um previsor de vetor de movimento do bloco atual. Uma vez que vetores de movimento de todos os blocos codificados usando predição inter são preditos usando o mesmo método, a informação sobre um previsor de vetor de movimento não deve ser codificada separadamente. No entanto, o aparelho 100 ou o decodificador de imagem 400, de acordo com uma ou mais modalidades exemplares, usa tanto um modo em que a informação sobre um previsor de vetor de movimento não é codificada separadamente quanto um modo em que a informação sobre um previsor de vetor de movimento é codificada de forma a predizer mais precisamente um vetor de movimento, os quais serão descritos em detalhes neste momento. (1) Modo Explícito Um dos métodos de codificação de um previsor de vetor de movimento, que pode ser selecionado pelo previsor 910, pode implementar um modo de codificação explícito da informação sobre um previsor de vetor de movimento de um bloco atual. Este modo explícito é um modo que calcula pelo menos um candidato o previsor de vetor de movimento e codifica separadamente a informação indicando qual previsor de vetor de movimento é usado para predizer um vetor de movimento de um bloco atual. Candidatos o previsor de vetor de movimento, de acordo com uma ou mais modalidades exemplares, serão descritos neste momento com referência às Figuras 10A, 10B e 11A a 11C.
As Figuras 10A e 10B ilustram candidatos o previsor de vetor de movimento de um modo explícito de acordo com uma ou mais modalidades exemplares. Com referência à Figura 10A, um método de predição de vetor de movimento, de acordo com uma modalidade exemplar, pode usar um dos vetores de movimento de blocos previamente codificados adjacentes a um bloco atual como um previsor de vetor de movimento do bloco atual. Um bloco aO à esquerda entre os blocos adjacentes a um lado superior do bloco atual, um bloco bO superior entre os blocos adjacentes a um lado esquerdo do mesmo, um bloco c adjacente a um lado superior direito do mesmo, um bloco d adjacente a um lado superior esquerdo do mesmo, e um bloco e adjacente a um lado inferior direito do mesmo podem ser usados paro previsores de vetor de movimento do bloco atual.
Com referência à Figura 10B, vetores de movimento de todos os blocos adjacentes a um bloco atual podem ser usados como previsores de vetor de movimento do bloco atual. Em outras palavras, vetores de movimento não somente de um bloco aO à esquerda entre os blocos adjacentes a um lado superior do bloco atual, mas de todos os blocos adjacentes ao lado superior do mesmo podem ser usados como previsores de vetor de movimento do bloco atual. Além disso, vetores de movimento não somente de um bloco bO superior entre os blocos adjacentes a um lado esquerdo do mesmo, mas de todos os blocos adjacentes ao lado esquerdo do mesmo podem ser usados como previsores de vetor de movimento do bloco atual.
Alternativamente, um valor médio de vetores de movimento de blocos adjacentes pode ser usado como um previsor de vetor de movimento. Por exemplo, valor médio (mv_aO, mv__bO, mv_c) pode ser usado como um previsor de vetor de movimento do bloco atual, em que mv_ aO indica um vetor de movimento do bloco aO, mv_ bO indica um vetor de movimento do bloco bO e mv_c indica um vetor de movimento do bloco c.
As FigurasllA a 11C ilustram candidatos o previsor de vetor de movimento de um modo explícito de acordo com outra modalidade exemplar. A Figura 11A ilustra um método que calcula um previsor de vetor de movimento de um Quadro Preditivo Bidirecional (referido como um quadro B) de acordo com uma modalidade exemplar. Quando um quadro atual incluindo um bloco atual é um quadro B, em que predição bidirecional é realizada, um vetor de movimento gerado com base em uma distância temporal pode ser um previsor de vetor de movimento.
Com referência à Figura 11A, um previsor de vetor de movimento de um bloco atual 1100 de um quadro atual 1110 pode ser gerado usando um vetor de movimento de um bloco 1120 em uma posição co-localizada de um quadro temporalmente precedente 1112. Por exemplo, se um vetor de movimento mv_colA do bloco 1120 em uma posição co-localizada com o bloco atual 1100 é gerado para um bloco buscado 1122 de um quadro temporalmente subsequente 1114 do quadro atual 1110, candidatos o previsor de vetor de movimento mv_L0A e mv_LlA do bloco atual 1100 podem ser gerados de acordo com as equações abaixo: em que mv_L0A indica um previsor de vetor de movimento do bloco atual 1100 para o quadro temporalmente precedente 1112, e mv_LlA indica um previsor de vetor de movimento do bloco atual 1100 para o quadro temporalmente subsequente 1114. A Figura 11B ilustra um método de geração de um •M* —f * previsor de vetor de movimento de um quadro B de acordo com outra modalidade exemplar. Em comparação com o método ilustrado na Figura 11A, um bloco 113 0 em uma posição co-localizada com o bloco atual 1100 existe no quadro temporalmente subsequente 1114 na Figura 11B.
Com referência à Figura 11B, um previsor de vetor de movimento do bloco atual 1100 do quadro atual 1110 pode ser gerado usando um vetor de movimento de um bloco 1130 em uma posição co-localizada do quadro temporalmente subsequente 1114. Por exemplo, se um vetor de movimento mv_colB do bloco 1130 em uma posição co-localizada com o bloco atual 1100 é gerado para um bloco buscado 1132 do quadro temporalmente precedente 1112 do quadro atual 1110, candidatos o previsor de vetor de movimento mv_L0B e mv_LlB do bloco atual 1100 podem ser gerados de acordo com as equações abaixo: em que mv_LOB indica um previsor de vetor de movimento do bloco atual 1100 para o quadro temporalmente precedente 1112, e mv_LlB indica um previsor de vetor de movimento do bloco atual 1100 para o quadro temporalmente subsequente 1114.
Na geração de um vetor de movimento do bloco atual 1100 de um quadro B, pelo menos um dos métodos ilustrados nas Figuras 11A e 11B pode ser usado. Em outras palavras, uma vez - que um previsor de vetor de movimento é gerado usando um vetor de movimento e uma distância temporal do bloco 1120 ou 1130 em uma posição co-localizada com o bloco atual 1100, previsores de vetor de movimento podem ser gerados usando os métodos ilustrados nas Figuras 11A e 11B se os vetores de movimento dos blocos 112 0 e 113 0 na posição co-localizada existirem. Assim, o previsor 910, de acordo com uma modalidade exemplar, pode gerar um previsor de vetor de movimento do bloco atual 1100 usando apenas um bloco com um vetor de movimento entre os blocos 1120 e 1130 na posição co-localizada.
Por exemplo, quando o bloco 1120 em uma posição co-localizada do quadro temporalmente precedente 1112 é codificado usando predição intra ao invés de predição inter, um vetor de movimento do bloco 1120 não existe, e, portanto, um previsor de vetor de movimento do bloco atual 1100 não pode ser gerado usando o método de geração de um previsor de vetor de movimento conforme ilustrado na Figura 11A. A Figura 11C ilustra um método de geração de um previsor de vetor de movimento de um quadro B de acordo com uma modalidade exemplar. Com referência à Figura 11C, um previsor de vetor de movimento do bloco atual 1100 do quadro atual 1110 pode ser gerado usando um vetor de movimento de um bloco 1140 em uma posição co-localizada do quadro temporalmente precedente 1112. Por exemplo, se um vetor de movimento mv_colC do bloco 1130 em uma posição co-localizada com o bloco atual 1100 é gerado para um bloco buscado 1142 de outro quadro temporalmente precedente 1116, um candidato o previsor de vetor de movimento mv_L0C do bloco atual 1100 pode ser gerado de acordo com a equação abaixo: Uma vez que o quadro atual 1110 é um quadro P, o número de previsores de vetor de movimento do bloco atual 1100 e 1, ao contrario das Figuras 11A e 11B.
Em síntese, um conjunto C de candidatos o previsor de vetor de movimento de acordo com as Figuras 10A, 10B e 11A a 11C pode ser gerado de acordo com a equação abaixo: C = {valor médio (mv_a0, mv__b0, mv_c) , mv_a0, mv_al ..., mv_aN, mv_b0, mv_bl, ... , mv_bN, mv_c, mv_d, mv_e, mv_temporal}.
Alternativamente, o conjunto C pode ser gerado pela redução do número de candidatos o previsor de vetor de movimento de acordo com a equação abaixo: C = {valor médio (mv_a', mv_b', mv_c'), mv_a', mv_b', mv_c', mv_temporal}.
Em que, mv_x indica um vetor de movimento de um bloco x, valor médio () indica um valor médio, e mv_temporal indica candidatos o previsor de vetor de movimento gerados usando uma distância temporal descrita acima em associação com as Figuras 11A a 11C.
Além disso, mv_a' indica um primeiro vetor de movimento válido entre mv_aO, mv_al..., mv_aN. Por exemplo, quando um bloco aO é codificado usando predição intra, um vetor de movimento mv_aO do bloco aO não é válido, e assim mv_a' = mv_al, e se um vetor de movimento de um bloco al também não for válido, mv_a' = mv_a2.
Da mesma forma, mv_b' indica um primeiro vetor de movimento válido entre mv__bO, mv__bl. . ., mv_bN, e mv_c' indica um primeiro vetor de movimento válido entre mv_c, mv_d e mv_e. . O modo explícito é um modo de codificação da informação indicando qual vetor de movimento foi usado para um previsor de vetor de movimento de um bloco atual. Por exemplo, quando um vetor de movimento é codificado no modo explícito, um número binário pode ser alocado a cada um dos elementos do conjunto C, ou seja, candidatos o previsor de vetor de movimento, e se um dos candidatos for usado como um previsor de vetor de movimento de um bloco atual, um número binário correspondente pode ser emitido.
Será facilmente compreendido por aqueles versados na técnica que outros candidatos o previsor de vetor de movimento além daqueles descritos acima, em associação com o modo explícito, podem ser usados. (2) Modo Implícito Outro método de codificação de um previsor de vetor de movimento, que pode ser selecionado pelo previsor 910, implementa um modo de codificação da informação indicando que um previsor de vetor de movimento de um bloco atual é gerado com base em blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual. Ao contrário do modo explícito, este modo é um modo de codificação da informação indicando a geração de um previsor de vetor de movimento no modo implícito sem codificar a informação para especificar um previsor de vetor de movimento.
Conforme descrito acima, um codec, tal como 4 H.264/MPEG-4 AVC MPEG, usa vetores de movimento de blocos previamente codificados adjacentes a um bloco atual para predizer um vetor de movimento do bloco atual. Ou seja, um valor médio de vetores de movimento de blocos previamente codificados adjacentès aos lados esquerdo, superior e superior direito do bloco atual é usado como um previsor de vetor de movimento do bloco atual. Neste caso, ao contrário do modo explícito, a informação para selecionar um dos candidatos o previsor de vetor de movimento não pode ser codificada.
Em outras palavras, se apenas a informação indicando que um previsor de vetor de movimento de um bloco atual foi codificado no modo implícito é codificada em um processo de codificação de imagem, um valor médio de vetores de movimento dos blocos previamente codificados adjacentes aos lados esquerdo, superior e superior direito do bloco atual pode ser usado como um previsor de vetor de movimento do bloco atual em um processo de decodificação de imagem.
Além disso, um método de codificação de imagem, de acordo com uma modalidade exemplar, fornece um novo modo implícito além do método que usa um valor médio de vetores de movimento de blocos previamente codificados adjacentes aos lados esquerdo, superior e superior direito de um bloco atual como um previsor de vetor de movimento do bloco atual. Isto será descrito em detalhes neste momento com referência à Figura 12. A Figura 12 ilustra um método de geração de um previsor de vetor de movimento em um modo implícito de acordo com uma modalidade exemplar. Com referência à Figura 12, pixels 1222 incluídos em uma área previamente codificada 1220 adjacente a um bloco atual 1200 de um quadro atual 1210 são usados para gerar um previsor de vetor de movimento do bloco atual 1200. Pixels correspondentes 1224 são determinados através da busca por um quadro de referência 1212 usando os pixels adjacentes 1222. Os pixels correspondentes 1224 podem ser determinados calculando uma Soma das Diferenças Absolutas (SAD). Quando os pixels correspondentes 1224 são determinados, um vetor de movimento mv_modelo dos pixels adjacentes 1222 é gerado, e o vetor de movimento mv__modelo pode ser usado como um previsor de vetor de movimento do bloco atual 1200.
Se um modo que usa um valor médio de vetores de movimento de blocos adjacentes como um previsor de vetor de movimento é definido como "modo implícito _1", e se um modo que gera um previsor de vetor de movimento usando pixels adjacentes a um bloco atual é definido como "modo implícito _2", um previsor de vetor de movimento pode ser gerado usando um dos dois modos implícitos, modo implícito _l e modo implícito_2, codificando a informação sobre um dos dois modos implícitos em um processo de codificação de imagem e Com referência â informação sobre um modo em um processo de decodificação de imagem. (3) Seleção do Modo Pode haver vários critérios para o previsor 910 selecionar um dos modos explícito e implícito descritos Θ,ΟΧΙΠΗ - Uma vez que um de uma pluralidade de candidatos o previsor de vetor de movimento é selecionado no modo explícito, um previsor de vetor de movimento mais semelhante a um vetor de movimento de um bloco atual pode ser selecionado. No entanto, uma vez que a informação indicando um de uma pluralidade de candidatos o previsor de vetor de movimento é codificada, um overhead maior do que nos modos implícitos pode ocorrer. Assim, para uma unidade de codificação com um tamanho maior, um vetor de movimento pode ser codificado no modo explícito porque uma probabilidade de aumento da ocorrência de um erro quando um vetor de movimento é erroneamente predito, é maior para uma unidade de codificação com um tamanho maior do que para uma unidade de codificação com um tamanho menor e o número de vezes de ocorrência de overhead diminui para cada quadro.
Por exemplo, quando um quadro dividido igualmente em unidades de codificação m com um tamanho de 64x64 é codificado no modo explícito, o número de vezes de ocorrência de overhead é m. No entanto, quando um quadro com o mesmo tamanho dividido igualmente em unidades de codificação 4m com o tamanho de 32x32 é codificado no modo explícito, o número de vezes de ocorrência de overhead ê 4m.
Assim, o previsor 910, de acordo com uma modalidade exemplar, pode selecionar um dos modos explícito e implícito com base no tamanho de uma unidade de codificação quando um vetor de movimento de um bloco atual é codificado.
Uma vez que o tamanho de uma unidade de codificação no método de codificação de imagem e no método de decodificação de imagem, de acordo com modalidades exemplares descritas acima com referência às Figuras 1 a 8, é representado usando uma profundidade, o previsor 910 determina com base em uma profundidade de um bloco atual se um vetor de movimento do bloco atual for codificado no modo explícito ou implícito. Por exemplo, quando unidades de codificação cujas profundidades são 0 e 1 são inter-previstas, vetores de movimento das unidades de codificação são codificados no modo explícito, e quando unidades de codificação cujas profundidades são iguais ou maiores do que 2 são inter-previstas, vetores de movimento das unidades de codificação são codificados no modo implícito.
De acordo com outra modalidade exemplar, o previsor 910 pode selecionar o modo explícito ou implícito para cada unidade de quadro ou módulo. Uma vez que as características de imagem são diferentes para cada unidade de quadro ou módulo, o modo explícito ou implícito pode ser selecionado para cada unidade de quadro ou módulo considerando estas características de imagem. Vetores de movimento de unidades de codificação incluídas em um quadro ou módulo atual podem ser codificados por predição selecionando um modo ideal entre o modo explícito e implícito, tendo em consideração o custo R-D.
Por exemplo, se vetores de movimento de unidades de codificação incluídas em um quadro ou módulo podem ser preditos exatamente sem usar o modo explícito, vetores de movimento de todas as unidades de codificação incluídas no quadro ou módulo podem ser codificados por predição no modo implícito.
De acordo com outra modalidade exemplar, o previsor 910 pode selecionar o modo explícito ou implícito com base na condição de um bloco atual ser codificado no modo de salto. O modo de salto é um modo de codificação em que a informação sinalizadora indicando que um bloco atual foi codificado no modo de salto é codificada sem codificar um valor de pixel.
Além disso, o modo de salto é um modo em que um valor de pixel de um bloco atual não é codificado, uma vez que um bloco de predição gerado através da realização de compensação de movimento usando um previsor de vetor de movimento como um vetor de movimento do bloco atual é semelhante ao bloco atual. Assim, como um previsor de vetor de movimento é gerado de forma semelhante a um vetor de movimento de um bloco atual, a probabilidade de codificação do bloco atual no modo de salto é maior. Portanto, um bloco codificado no modo de salto pode ser codificado no modo explícito.
Referindo-se novamente à Figura 9, quando o previsor 910 seleciona um dos modos explícito e implícito, e determina um previsor de vetor de movimento de acordo com o modo selecionado, o primeiro codificador 920 e o segundo codificador 930 codificam a informação sobre um modo de codificação e um vetor de movimento.
Especificamente, o primeiro codificador 920 codifica a informação sobre um previsor de vetor de movimento de um bloco atual. Mais detalhadamente, quando o previsor 910 determina que um vetor de movimento do bloco atual seja codificado no modo explícito, o primeiro codificador 920 codifica a informação indicando que um previsor de vetor de movimento foi gerado no modo explícito e a informação indicando qual candidato o previsor de vetor de movimento foi utilizado como o previsor de vetor de movimento do bloco atual.
Em contraste, quando o previsor 910 determina que o vetor de movimento do bloco atual seja codificado no modo implícito, o primeiro codificador 920 codifica a mformaçao indicando que o previsor de vetor de movimento do bloco atual foi gerado no modo implícito. Em outras palavras, o primeiro codificador 920 codifica a informação indicando que o previsor de vetor de movimento do bloco atual foi gerado usando blocos ou pixels adjacentes ao bloco atual. Se dois ou mais modos implícitos são usados, o primeiro codificador 920 pode adicionalmente codificar a informação indicando qual modo implícito foi usado para gerar o previsor de vetor de movimento do bloco atual. O segundo codificador 930 codifica um vetor de movimento de um bloco atual com base em um previsor de vetor de movimento determinado pelo previsor 910. Alternativamente, o segundo codificador 930 gera um vetor de diferença subtraindo o previsor de vetor de movimento gerado pelo previsor 910 do vetor de movimento do bloco atual gerado como um resultado da compensação de movimento, e codifica a informação sobre o vetor de diferença. A Figura 13 é um diagrama de blocos de um aparelho 1300 para decodificação de um vetor de movimento de acordo com uma modalidade exemplar. 0 aparelho 1300 para decodificação do vetor de movimento pode ser incluído no aparelho de decodificação de imagem 200 descrito acima com referência à Figura 2 ou no decodificador de imagem 500 descrito acima com referência à Figura 5. Com referência à Figura 13, um aparelho de decodificação de vetor de movimento 1300 inclui um primeiro decodificador 1310, um segundo decodificador 1320, um previsor 1330 é um restaurador de vetor de movimento 1340. O primeiro decodificador 1310 decodifica a informação sobre um previsor de vetor de movimento de um bloco atual, a qual está incluída em um fluxo contínuo de dados. Mais detalhadamente, o primeiro decodificador 1310 decodifica a informação indicando se o previsor de vetor de movimento do bloco atuai foi codificado no modo explicito ou implícito. Quando o previsor de vetor de movimento do bloco atual for codificado no modo explícito, o primeiro decodificador 1310 adicionalmente decodifica a informação indicando um previsor de vetor de movimento usado como o previsor de vetor de movimento do bloco atual entre uma pluralidade de previsores de vetor de movimento. Quando o previsor de vetor de movimento do bloco atual for codificado no modo implícito, o primeiro decodificador 1310 pode adicionalmente decodificar a informação indicando qual de uma pluralidade de modos implícitos foi usado para codificar o previsor de vetor de movimento do bloco atual. O segundo decodificador 1320 decodifica um vetor de diferença entre um vetor de movimento e o previsor de vetor de movimento do bloco atual incluído no fluxo contínuo de dados. O previsor 1330 gera um previsor de vetor de movimento do bloco atual com base na informação sobre o previsor de vetor de movimento do bloco atual, a qual foi decodificada pelo primeiro decodificador 1310.
Quando a informação sobre o previsor de vetor de movimento do bloco atual que foi codificada no modo explícito é decodificada, o previsor 1330 gera um previsor de vetor de movimento entre os candidatos a previsor de vetor de movimento descritos acima com referência às Figuras 10A, 10B e 11A a 11C, e usa o previsor de vetor de movimento gerado como o previsor de vetor de movimento do bloco atual.
Quando a informação sobre o previsor de vetor de movimento do bloco atual que foi codificada no modo implícito é decodificada, o previsor 1330 gera o previsor de vetor de movimento do bloco atual usando blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual. Mais detalhadamente, o previsor 1330 gera um valor médio de vetores de movimento de blocos adjacentes ao bloco atual como o previsor de vetor de movimento do bloco atual ou gera o previsor de vetor de movimento do bloco atual através da busca por um quadro de referência usando pixels adjacentes ao bloco atual. 0 restaurador de vetor de movimento 1340 restaura um vetor de movimento do bloco atual somando o previsor de vetor de movimento gerado pelo previsor 1330 com o vetor de diferença decodificado pelo segundo decodificador 1320. O vetor de movimento restaurado é usado para compensação de movimento do bloco atual. A Figura 14 é um fluxograma de um método de codificação de um vetor de movimento de acordo com uma modalidade exemplar. Com referência à Figura 14, um aparelho de codificação de vetor de movimento 900, de acordo com uma modalidade exemplar, seleciona um de um modo explícito e implícito como um modo de codificação da informação sobre um previsor de vetor de movimento na operação 1410. O modo explícito é um modo de codificação da informação indicando um candidato o previsor de vetor de movimento entre pelo menos um candidato o previsor de vetor de movimento conforme a informação sobre um previsor de vetor de movimento, e o modo implícito é um modo de codificação da informação indicando que um previsor de vetor de movimento foi gerado com base em blocos ou pixels incluídos em uma área previamente codificada adjacente a um bloco atual conforme a informação sobre o previsor de vetor de movimento. Descrições detalhadas dos mesmos foram fornecidas acima com referência às Figuras 10A, 10B, 11A a 11C e 12.
Um modo pode ser selecionado com base no tamanho de um bloco atual, ou seja, uma profundidade do bloco atual, ou selecionado em uma unidade de um quadro ou módulo atual em que o bloco atual está incluído. Alternativamente, um modo pode ser selecionado de acordo com a condição de o bloco atual ser codificado em um modo de salto.
Na operação 1420, o aparelho de codificação de vetor de movimento 900 determina um previsor de vetor de movimento de acordo com o modo selecionado na operação 1410. Em detalhes, o aparelho de codificação de vetor de movimento 900 determina um previsor de vetor de movimento do bloco atual com base no modo explícito ou implícito selecionado na operação 1410. Mais detalhadamente, o aparelho de codificação de vetor de movimento 900 determina um candidato o previsor de vetor de movimento entre pelo menos um candidato o previsor de vetor de movimento como o previsor de vetor de movimento do bloco atual no modo explícito, ou determina o previsor de vetor de movimento do bloco atual com base em blocos ou pixels adjacentes ao bloco atual no modo implícito.
Na operação 1430, o aparelho de codificação de vetor de movimento 900 codifica a informação sobre o previsor de vetor de movimento determinado na operação 1420. No caso do modo explícito, o aparelho de codificação de vetor de movimento 900 codifica a informação indicando um candidato o previsor de vetor de movimento entre pelo menos um candidato o previsor de vetor de movimento como o previsor de vetor de movimento do bloco atual e a informação indicando que a informação sobre o previsor de vetor de movimento o bloco atual foi codificada no modo explícito. No caso do modo implícito, o aparelho de codificação de vetor de movimento 900 codifica a informação indicando que o previsor de vetor de movimento do bloco atual foi gerado com base em blocos ou pixels incluídos em uma área previamente codificada adjacente ao bloco atual. No caso de uma pluralidade de modos implícitos, o aparelho de codificação de vetor de movimento 900 pode adicionalmente codificar a informação indicando um da pluralidade de modos implícitos.
Na operação 1440, o aparelho de codificação de vetor de movimento 900 codifica um vetor de diferença gerado subtraindo o previsor de vetor de movimento determinado na operação 1420 de um vetor de movimento do bloco atual.. A Figura 15 é um fluxograma de um método de decodificação de um vetor de movimento de acordo com uma modalidade exemplar. Com referência à Figura 15, um aparelho de decodificação de vetor de movimento 1300, de acordo com uma modalidade exemplar, decodifica a informação sobre um previsor de vetor de movimento de um bloco atual, a qual está incluída em um fluxo contínuo de dados, na operação 1510. Em detalhes, o aparelho de decodificação de vetor de movimento 1300 decodifica a informação sobre um modo usado para codificar o previsor de vetor de movimento do bloco atual entre um modo explícito e implícito.
No caso do modo explícito, o aparelho de decodificação de vetor de movimento 1300 decodifica a informação indicando que o previsor de vetor de movimento do bloco atual foi codificado no modo explícito e a informação sobre um candidato o previsor de vetor de movimento entre pelo menos um candidato o previsor de vetor de movimento. No caso do modo implícito, o aparelho de decodificação de vetor de movimento 1300 decodifica a informação indicando que o previsor de vetor de movimento do bloco atual foi gerado com base em blocos ou pixels incluídos em uma área previamente decodificada adjacente ao bloco atual. No caso de uma pluralidade de modos implícitos, o aparelho de decodificação de vetor de movimento 1300 pode adicionalmente decodificar a informação indicando um da pluralidade de modos implícitos.
Na operação 1520, o aparelho de decodificação de vetor de movimento 1300 decodifica a informação sobre um vetor de diferença. 0 vetor de diferença é um vetor de uma diferença entre o previsor de vetor de movimento do bloco atual e um vetor de movimento do bloco atual.
Na operação 1530, o aparelho de decodificação de vetor de movimento 13 00 gera o previsor de vetor de movimento do bloco atual com base na informação sobre o previsor de vetor de movimento, a qual foi decodificada na operação 1510. Em detalhes, o aparelho de decodificação de vetor de movimento 13 00 gera o previsor de vetor de movimento do bloco atual de acordo com o modo explícito ou implícito. Mais detalhadamente, o aparelho de decodificação de vetor de movimento 1300 gera o previsor de vetor de movimento do bloco atual selecionando um candidato o previsor de vetor de movimento entre pelo menos um candidato o previsor de vetor de movimento ou usando blocos ou pixels incluídos em uma área previamente decodificada adjacente ao bloco atual.
Na operação 1540, o aparelho de decodificação de vetor de movimento 1300 restaura o vetor de movimento do bloco atual somando o vetor de diferença decodificado na operação 1520 com o previsor de vetor de movimento gerado na operação 1530.
Embora modalidades exemplares tenham sido particularmente mostradas e descritas acima, será compreendido por aqueles versados na técnica que várias mudanças na forma e detalhes podem ser feitas em tais modalidades sem se afastar do espírito e escopo do presente conceito inventivo, conforme definido pelas reivindicações a seguir.
Além disso, um sistema de acordo com uma modalidade exemplar pode ser implementado usando um código de leitura por computador em um meio de gravação de leitura por computador. Por exemplo, pelo menos um de um aparelho 100 para codificação de uma imagem, um aparelho 200 para decodificação de uma imagem, um codificador de imagem 400, um decodificador de imagem 500, um aparelho de codificação de vetor de movimento 900 e um aparelho de decodificação de vetor de movimento 1300, de acordo com modalidades exemplares, pode incluir um barramento acoplado a unidades de cada um dos dispositivos mostrados nas Figuras 1, 2, 4, 5, 9 e 13 e pelo menos um processador conectado ao barramento. Além disso, uma memória acoplada a pelo menos um processador para executar comandos, conforme descrito acima, pode ser incluída e conectada ao barramento para armazenar os comandos e mensagens recebidas ou mensagens geradas. O meio de gravação de leitura por computador é qualquer dispositivo de armazenamento de dados que pode armazenar dados, os quais podem ser posteriormente lidos por um sistema de computador. Exemplos do meio de gravação de leitura por computador incluem memória só de leitura (ROM), memória de acesso aleatório (RAM), CD-ROMs, fitas magnéticas, disquetes e, dispositivos de armazenamento de dados ópticos. 0 meio de gravação de leitura por computador também pode ser distribuído em uma rede acoplada a sistemas de computador, de modo que o código de leitura por computador seja armazenado e executado de forma distribuída. - REIVINDICAÇÕES -

Claims (4)

1. APARELHO DE DECODIFICAÇÃO DE UM VETOR DE MOVIMENTO, o aparelho caracterizado por compreender: previsor, que determina blocos adjacentes a um bloco atual tendo um vetor de movimento, candidatos a previsor de vetor de movimento dentre vetores de movimento dos blocos adjacentes determinados, e um previsor de vetor de movimento do bloco atual dentre os candidatos a previsor de vetor de movimento, com base na informação do modo de previsão do bloco atual; e unidade restauradora do vetor de movimento, que obtém um vetor de movimento do bloco atual, com base no previsor de vetor de movimento e um vetor diferencial obtido através de um fluxo de bits, em que os blocos adjacentes compreendem um primeiro bloco fora do bloco atual, localizado em um lado inferior esquerdo do bloco atual.
2. APARELHO, de acordo com a reivindicação 1, caracterizado por os candidatos a previsor de vetor de movimento ainda compreenderem um vetor de movimento de um bloco co-localizado em uma posição, num quadro de referência co-localizado com uma posição do bloco atual num quadro atual.
3. APARELHO, de acordo com a reivindicação 2, caracterizado por vetor de movimento ainda do bloco co-localizado ser dimensionado com base numa distância temporal entre a imagem de referência e o quadro atual.
4. APARELHO, de acordo com a reivindicação 1, caracterizado por o bloco atual ser uma unidade de dados dividida a partir de uma imagem, a imagem ser dividida, hierarquicamente, a partir de uma pluralidade de unidades de codificação máxima, de acordo com a informação sobre um tamanho máximo de uma unidade de codificação, em unidades de codificação de profundidades codificadas, de acordo com profundidades, em que uma unidade de codificação de uma profundidade atual é aquela de unidades de dados retangulares divididas a partir de uma unidade de codificação de uma profundidade superior, em que a unidade de codificação da profundidade atual é dividida em unidades de codificação de uma profundidade inferior, de modo independente das unidades de codificação vizinhas, e em que unidades de codificação de uma estrutura hierárquica compreendem unidades de codificação codificadas dentre as unidades de codificação divididas a partir de uma unidade de codificação máxima.
BR122013019018-0A 2009-08-13 2010-08-13 Método de decodificação de uma imagem BR122013019018B1 (pt)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
KR10-2009-0074896 2009-08-13
KR1020090074896A KR101452859B1 (ko) 2009-08-13 2009-08-13 움직임 벡터를 부호화 및 복호화하는 방법 및 장치
PCT/KR2010/005365 WO2011019247A2 (en) 2009-08-13 2010-08-13 Method and apparatus for encoding/decoding motion vector
BR112012001514-1A BR112012001514B1 (pt) 2009-08-13 2010-08-13 Método de codificação de uma imagem

Publications (2)

Publication Number Publication Date
BR122013019018A2 true BR122013019018A2 (pt) 2016-04-05
BR122013019018B1 BR122013019018B1 (pt) 2022-01-18

Family

ID=43586682

Family Applications (5)

Application Number Title Priority Date Filing Date
BR122020006091-3A BR122020006091B1 (pt) 2009-08-13 2010-08-13 Método de decodificação de uma imagem, método de codificação de uma imagem, e meio de armazenamento não transitório legível por computador que armazena um fluxo de bits
BR122013019018-0A BR122013019018B1 (pt) 2009-08-13 2010-08-13 Método de decodificação de uma imagem
BR112012001514-1A BR112012001514B1 (pt) 2009-08-13 2010-08-13 Método de codificação de uma imagem
BR122013019017-1A BR122013019017B1 (pt) 2009-08-13 2010-08-13 Aparelho para decodificação de uma imagem
BR122013019016-3A BR122013019016B1 (pt) 2009-08-13 2010-08-13 Método de decodificação de uma imagem

Family Applications Before (1)

Application Number Title Priority Date Filing Date
BR122020006091-3A BR122020006091B1 (pt) 2009-08-13 2010-08-13 Método de decodificação de uma imagem, método de codificação de uma imagem, e meio de armazenamento não transitório legível por computador que armazena um fluxo de bits

Family Applications After (3)

Application Number Title Priority Date Filing Date
BR112012001514-1A BR112012001514B1 (pt) 2009-08-13 2010-08-13 Método de codificação de uma imagem
BR122013019017-1A BR122013019017B1 (pt) 2009-08-13 2010-08-13 Aparelho para decodificação de uma imagem
BR122013019016-3A BR122013019016B1 (pt) 2009-08-13 2010-08-13 Método de decodificação de uma imagem

Country Status (22)

Country Link
US (10) US8537897B2 (pt)
EP (5) EP2452500A4 (pt)
JP (6) JP5756106B2 (pt)
KR (1) KR101452859B1 (pt)
CN (6) CN104506863B (pt)
AU (1) AU2010283121B2 (pt)
BR (5) BR122020006091B1 (pt)
CA (6) CA2820553C (pt)
CY (1) CY1123129T1 (pt)
DK (4) DK2677753T3 (pt)
ES (4) ES2751334T3 (pt)
HR (1) HRP20191791T1 (pt)
LT (1) LT2677749T (pt)
MX (1) MX2011013557A (pt)
MY (4) MY155891A (pt)
PL (4) PL2677749T3 (pt)
PT (1) PT2677749T (pt)
RU (6) RU2559740C2 (pt)
SI (1) SI2677749T1 (pt)
TW (7) TWI547150B (pt)
WO (1) WO2011019247A2 (pt)
ZA (2) ZA201201158B (pt)

Families Citing this family (66)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8503527B2 (en) 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
KR101474756B1 (ko) 2009-08-13 2014-12-19 삼성전자주식회사 큰 크기의 변환 단위를 이용한 영상 부호화, 복호화 방법 및 장치
KR101452859B1 (ko) 2009-08-13 2014-10-23 삼성전자주식회사 움직임 벡터를 부호화 및 복호화하는 방법 및 장치
KR101456498B1 (ko) 2009-08-14 2014-10-31 삼성전자주식회사 계층적 부호화 단위의 스캔 순서를 고려한 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
KR20110017719A (ko) 2009-08-14 2011-02-22 삼성전자주식회사 비디오 부호화 방법 및 장치, 비디오 복호화 방법 및 장치
AU2015201035B2 (en) * 2010-01-14 2016-04-28 Samsung Electronics Co., Ltd. Method and apparatus for encoding and decoding motion vector
KR101522850B1 (ko) 2010-01-14 2015-05-26 삼성전자주식회사 움직임 벡터를 부호화, 복호화하는 방법 및 장치
US9351017B2 (en) 2010-01-19 2016-05-24 Samsung Electronics Co., Ltd. Method and apparatus for encoding/decoding images using a motion vector of a previous block as a motion vector for the current block
CN102823248B (zh) 2010-04-08 2015-06-24 株式会社东芝 图像编码方法以及图像编码装置
US9510009B2 (en) 2010-05-20 2016-11-29 Thomson Licensing Methods and apparatus for adaptive motion vector candidate ordering for video encoding and decoding
CN103081470B (zh) * 2010-09-02 2016-08-03 Lg电子株式会社 编码和解码视频的方法和使用该方法的装置
KR101579392B1 (ko) 2010-09-27 2015-12-21 엘지전자 주식회사 블록 분할 방법 및 복호화 장치
KR101825768B1 (ko) 2010-11-24 2018-02-05 벨로스 미디어 인터내셔널 리미티드 움직임 벡터 산출 방법, 화상 부호화 방법, 화상 복호 방법, 움직임 벡터 산출 장치 및 화상 부호화 복호 장치
US10397599B2 (en) 2010-12-17 2019-08-27 Electronics And Telecommunications Research Institute Method and apparatus for inter prediction using motion vector candidate based on temporal motion prediction
CN106878742B (zh) 2011-01-12 2020-01-07 太阳专利托管公司 动态图像编解码装置
KR20120090740A (ko) * 2011-02-07 2012-08-17 (주)휴맥스 정밀한 단위의 필터 선택을 적용한 영상 부호화/복호화 장치 및 방법
EP2675167B1 (en) 2011-02-10 2018-06-20 Sun Patent Trust Moving picture encoding method, moving picture encoding device, moving picture decoding method, moving picture decoding device, and moving picture encoding decoding device
WO2012114694A1 (ja) * 2011-02-22 2012-08-30 パナソニック株式会社 動画像符号化方法、動画像符号化装置、動画像復号方法、および、動画像復号装置
MX2013009864A (es) 2011-03-03 2013-10-25 Panasonic Corp Metodo de codificacion de imagenes en movimiento, metodo de decodificacion de imagenes en movimiento, aparato de codificacion de imagenes en movimiento, aparato de decodificacion de imagenes en movimiento y aparato de codificacion y decodificacion de imagenes en movimiento.
EP4254956A3 (en) 2011-03-09 2023-12-20 Kabushiki Kaisha Toshiba Video image encoding method and video image decoding method
EP3937497B1 (en) * 2011-03-21 2023-02-22 LG Electronics, Inc. Motion vector predictor selection
US9648334B2 (en) * 2011-03-21 2017-05-09 Qualcomm Incorporated Bi-predictive merge mode based on uni-predictive neighbors in video coding
PL2698999T3 (pl) 2011-04-12 2017-10-31 Sun Patent Trust Sposób kodowania ruchomych obrazów, urządzenie do kodowania ruchomych obrazów, sposób dekodowania ruchomych obrazów, urządzenie do dekodowania ruchomych obrazów, oraz urządzenie do kodowania/dekodowania ruchomych obrazów
KR20120118780A (ko) * 2011-04-19 2012-10-29 삼성전자주식회사 다시점 비디오의 움직임 벡터 부호화 방법 및 장치, 그 복호화 방법 및 장치
CA2833893C (en) 2011-05-24 2024-02-27 Panasonic Corporation Image coding method, image coding apparatus, image decoding method, image decoding apparatus, and image coding and decoding apparatus
US9485518B2 (en) 2011-05-27 2016-11-01 Sun Patent Trust Decoding method and apparatus with candidate motion vectors
PL3614665T3 (pl) 2011-05-27 2022-07-04 Sun Patent Trust Sposób kodowania obrazów, urządzenie do kodowania obrazów, sposób dekodowania obrazów, urządzenie do dekodowania obrazów, i urządzenie do kodowania i dekodowania obrazów
SG194746A1 (en) 2011-05-31 2013-12-30 Kaba Gmbh Image encoding method, image encoding device, image decoding method, image decoding device, and image encoding/decoding device
CA2834191C (en) 2011-05-31 2019-04-09 Panasonic Corporation Video encoding method, video encoding device, video decoding method, video decoding device, and video encoding/decoding device
WO2012171477A1 (en) * 2011-06-15 2012-12-20 Mediatek Inc. Method and apparatus of texture image compression in 3d video coding
US9131239B2 (en) 2011-06-20 2015-09-08 Qualcomm Incorporated Unified merge mode and adaptive motion vector prediction mode candidates selection
JP6112418B2 (ja) * 2011-06-29 2017-04-12 サン パテント トラスト 画像符号化方法、画像復号方法、画像符号化装置、画像復号装置および画像符号化復号装置
KR101900986B1 (ko) 2011-06-30 2018-09-20 선 페이턴트 트러스트 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치, 및, 화상 부호화 복호 장치
TW201306568A (zh) 2011-07-20 2013-02-01 Novatek Microelectronics Corp 移動估測方法
IN2014CN00729A (pt) 2011-08-03 2015-04-03 Panasonic Corp
ES2705251B1 (es) * 2011-09-23 2020-01-29 Kt Corp Método para inducir un bloque candidato de fusión y dispositivo que usa el mismo
KR101711355B1 (ko) * 2011-09-28 2017-02-28 가부시키가이샤 제이브이씨 켄우드 동영상 디코딩 장치, 동영상 디코딩 방법 및 동영상 디코딩 프로그램을 저장한 기록매체
KR101999869B1 (ko) 2011-10-19 2019-07-12 선 페이턴트 트러스트 화상 부호화 방법, 화상 부호화 장치, 화상 복호 방법, 및, 화상 복호 장치
KR20130050149A (ko) * 2011-11-07 2013-05-15 오수미 인터 모드에서의 예측 블록 생성 방법
KR20130050405A (ko) * 2011-11-07 2013-05-16 오수미 인터 모드에서의 시간 후보자 결정방법
US20140307783A1 (en) 2011-11-08 2014-10-16 Samsung Electronics Co., Ltd. Method and apparatus for motion vector determination in video encoding or decoding
KR20130058584A (ko) * 2011-11-25 2013-06-04 삼성전자주식회사 복호화기의 버퍼 관리를 위한 영상 부호화 방법 및 장치, 그 영상 복호화 방법 및 장치
WO2013095322A1 (en) 2011-12-19 2013-06-27 Intel Corporation Exhaustive sub-macroblock shape candidate save and restore protocol for motion estimation
US9013549B2 (en) * 2012-05-24 2015-04-21 Silicon Integrated Systems Corp. Depth map generation for conversion of two-dimensional image data into three-dimensional image data
KR102088383B1 (ko) * 2013-03-15 2020-03-12 삼성전자주식회사 비디오의 부호화 방법 및 장치, 비디오의 복호화 방법 및 장치
US10015515B2 (en) * 2013-06-21 2018-07-03 Qualcomm Incorporated Intra prediction from a predictive block
KR101712110B1 (ko) 2013-07-12 2017-03-13 삼성전자 주식회사 변이 벡터 유도를 사용하는 비디오 부호화 방법 및 그 장치, 비디오 복호화 방법 및 그 장치
TWI536811B (zh) * 2013-12-27 2016-06-01 財團法人工業技術研究院 影像處理方法與系統、解碼方法、編碼器與解碼器
US9883197B2 (en) 2014-01-09 2018-01-30 Qualcomm Incorporated Intra prediction of chroma blocks using the same vector
KR102349788B1 (ko) * 2015-01-13 2022-01-11 인텔렉추얼디스커버리 주식회사 영상의 부호화/복호화 방법 및 장치
US10547847B2 (en) * 2015-09-24 2020-01-28 Lg Electronics Inc. AMVR-based image coding method and apparatus in image coding system
WO2017082443A1 (ko) * 2015-11-13 2017-05-18 엘지전자 주식회사 영상 코딩 시스템에서 임계값을 이용한 적응적 영상 예측 방법 및 장치
CN107046645B9 (zh) 2016-02-06 2020-08-14 华为技术有限公司 图像编解码方法及装置
JP2016106494A (ja) * 2016-02-12 2016-06-16 株式会社東芝 動画像符号化方法及び動画像復号化方法
US10575000B2 (en) * 2016-04-20 2020-02-25 Mediatek Inc. Method and apparatus for image compression using block prediction mode
KR102275420B1 (ko) * 2016-07-12 2021-07-09 한국전자통신연구원 영상 부호화/복호화 방법 및 이를 위한 기록 매체
US11240526B2 (en) 2017-01-02 2022-02-01 Industry-University Cooperation Foundation Hanyang University Method and apparatus for decoding image using interpicture prediction
US10595035B2 (en) * 2017-03-22 2020-03-17 Qualcomm Incorporated Constraining motion vector information derived by decoder-side motion vector derivation
JP6503014B2 (ja) * 2017-06-16 2019-04-17 株式会社東芝 動画像符号化方法及び動画像復号化方法
BR112020004381A2 (pt) * 2017-09-28 2020-09-08 Samsung Electronics Co., Ltd. método de decodificação de vídeo, aparelho de decodificação de vídeo, método de codificação de vídeo, e aparelho de codificação de vídeo
JP6510084B2 (ja) * 2018-01-05 2019-05-08 株式会社東芝 動画像復号化方法及び電子装置
US10904555B2 (en) * 2018-07-11 2021-01-26 Tencent America LLC Method and apparatus for video coding
CN116193141A (zh) 2018-09-10 2023-05-30 Lg电子株式会社 视频编码和解码设备、以及发送图像数据的设备
EP3893509A4 (en) * 2018-12-07 2022-10-26 Samsung Electronics Co., Ltd. VIDEO DECODING METHOD AND DEVICE AND VIDEO ENCODING METHOD AND DEVICE
JP6871442B2 (ja) * 2020-01-21 2021-05-12 株式会社東芝 動画像符号化方法及び動画像復号化方法
JP6871447B2 (ja) * 2020-02-03 2021-05-12 株式会社東芝 動画像符号化方法及び動画像復号化方法

Family Cites Families (71)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5400076A (en) * 1991-11-30 1995-03-21 Sony Corporation Compressed motion picture signal expander with error concealment
PT2375753E (pt) 1993-03-24 2013-10-21 Sony Corp Método para codificar e descodificar vetores de movimento e respetivo dispositivo e método para codificar e descodificar sinais de imagem e respetivo dispositivo
DE69719365T2 (de) 1996-12-18 2003-10-16 Thomson Consumer Electronics Effiziente kompression und dekompression von blocks fester länge
JPH10178639A (ja) 1996-12-19 1998-06-30 Matsushita Electric Ind Co Ltd 画像コーデック部および画像データ符号化方法
US6005980A (en) 1997-03-07 1999-12-21 General Instrument Corporation Motion estimation and compensation of video object planes for interlaced digital video
KR100249223B1 (ko) * 1997-09-12 2000-03-15 구자홍 엠팩(mpeg)-4의움직임벡터코딩방법
JPH11146367A (ja) * 1997-11-06 1999-05-28 Matsushita Electric Ind Co Ltd モバイルビデオフォン
US6609501B2 (en) 2001-04-12 2003-08-26 Walbro Corporation Fuel pressure regulation system
US6980596B2 (en) 2001-11-27 2005-12-27 General Instrument Corporation Macroblock level adaptive frame/field coding for digital video content
ES2545213T3 (es) * 2001-11-21 2015-09-09 Google Technology Holdings LLC Codificación de cuadro/campo adaptativa de nivel de macrobloques para contenido de vídeo digital
GB0203071D0 (en) 2002-02-09 2002-03-27 Lucas Industries Ltd Control system
EP1408696A4 (en) 2002-07-02 2008-04-09 Matsushita Electric Ind Co Ltd METHOD FOR EVALUATING MOTION VECTORS, METHOD FOR CYCLING A DYNAMIC IMAGE, METHOD FOR DECODING A DYNAMIC IMAGE
JP4724351B2 (ja) 2002-07-15 2011-07-13 三菱電機株式会社 画像符号化装置、画像符号化方法、画像復号装置、画像復号方法、および通信装置
KR100865034B1 (ko) * 2002-07-18 2008-10-23 엘지전자 주식회사 모션 벡터 예측 방법
TWI287927B (en) 2002-07-30 2007-10-01 Sony Corp Memory device, signal processing device, image signal processing device and methods used thereof
US7023921B2 (en) 2002-08-06 2006-04-04 Motorola, Inc. Method and apparatus for determining block match quality
GB0228281D0 (en) 2002-12-04 2003-01-08 Imec Inter Uni Micro Electr Coding of motion vectors produced by wavelet-domain motion estimation
JP4536325B2 (ja) 2003-02-04 2010-09-01 ソニー株式会社 画像処理装置および方法、記録媒体、並びにプログラム
HUP0301368A3 (en) 2003-05-20 2005-09-28 Amt Advanced Multimedia Techno Method and equipment for compressing motion picture data
US20050013498A1 (en) * 2003-07-18 2005-01-20 Microsoft Corporation Coding of motion vector information
US7623574B2 (en) * 2003-09-07 2009-11-24 Microsoft Corporation Selecting between dominant and non-dominant motion vector predictor polarities
US7724827B2 (en) * 2003-09-07 2010-05-25 Microsoft Corporation Multi-layer run level encoding and decoding
US8345754B2 (en) 2003-09-07 2013-01-01 Microsoft Corporation Signaling buffer fullness
US7599438B2 (en) * 2003-09-07 2009-10-06 Microsoft Corporation Motion vector block pattern coding and decoding
KR100846780B1 (ko) 2003-11-10 2008-07-16 삼성전자주식회사 움직임 벡터 추정 방법 및 장치
US7535515B2 (en) * 2003-12-23 2009-05-19 Ravi Ananthapur Bacche Motion detection in video signals
US7469070B2 (en) 2004-02-09 2008-12-23 Lsi Corporation Method for selection of contexts for arithmetic coding of reference picture and motion vector residual bitstream syntax elements
DE102004009792B3 (de) 2004-02-28 2005-09-22 Daimlerchrysler Ag Kraftstoffzuführeinrichtung zur Versorgung der Injektoren an Brennräumen einer Brennkraftmaschine mit Kraftstoff
DE102004013307B4 (de) 2004-03-17 2012-12-06 Robert Bosch Gmbh Kraftstoffhochdruckpumpe mit einem Druckbegrenzungsventil
CN100385957C (zh) * 2004-05-21 2008-04-30 中国科学院计算技术研究所 一种运动矢量预测的方法
WO2006012383A2 (en) * 2004-07-20 2006-02-02 Qualcomm Incorporated Method and apparatus for motion vector prediction in temporal video compression
JP2006174415A (ja) * 2004-11-19 2006-06-29 Ntt Docomo Inc 画像復号装置、画像復号プログラム、画像復号方法、画像符号化装置、画像符号化プログラム及び画像符号化方法
US7970219B2 (en) * 2004-12-30 2011-06-28 Samsung Electronics Co., Ltd. Color image encoding and decoding method and apparatus using a correlation between chrominance components
EP1867171A1 (en) * 2005-04-06 2007-12-19 Thomson Licensing Method and apparatus for encoding enhancement layer video data
KR20080006609A (ko) * 2005-04-13 2008-01-16 노키아 코포레이션 스케일링가능성 정보의 코딩, 저장, 및 시그널링
JP4519723B2 (ja) * 2005-06-27 2010-08-04 富士通セミコンダクター株式会社 動きベクトルを利用する動画像データの符号化または復号化装置
US8279918B2 (en) 2005-07-15 2012-10-02 Utc Fire & Security Americas Corporation, Inc. Method and apparatus for motion compensated temporal filtering using residual signal clipping
US20070033385A1 (en) * 2005-08-02 2007-02-08 Advanced Micro Devices, Inc. Call return stack way prediction repair
JP2007081474A (ja) 2005-09-09 2007-03-29 Toshiba Corp 画像符号化装置及び方法
KR101441269B1 (ko) 2005-09-26 2014-09-18 미쓰비시덴키 가부시키가이샤 동화상 복호 장치 및 동화상 복호 방법
US20070179854A1 (en) * 2006-01-30 2007-08-02 M-Systems Media predictive consignment
TW200743371A (en) * 2006-05-12 2007-11-16 Matsushita Electric Ind Co Ltd Image processing apparatus, method and integrated circuit
JP4760552B2 (ja) * 2006-06-06 2011-08-31 ソニー株式会社 動きベクトル復号化方法および復号化装置
JP2007329258A (ja) 2006-06-07 2007-12-20 Fujitsu Ltd 半導体装置の製造方法
JP4712643B2 (ja) * 2006-08-17 2011-06-29 富士通セミコンダクター株式会社 フレーム間予測処理装置、フレーム間予測方法、画像符号化装置及び画像復号装置
JP4763549B2 (ja) * 2006-08-18 2011-08-31 富士通セミコンダクター株式会社 フレーム間予測処理装置、画像符号化装置、及び画像復号化装置
BRPI0715770B1 (pt) * 2006-08-25 2020-03-10 Interdigital Vc Holdings, Inc. Método, aparelho e mídia de armazenamento para particionamento com menor resolução
US20080082058A1 (en) 2006-10-02 2008-04-03 Wallach Gary S Debriding Callus Foot Tissue
CN101601305B (zh) * 2006-10-20 2013-01-23 诺基亚公司 用于可伸缩多媒体的自适应路径的通用指示
KR101365567B1 (ko) 2007-01-04 2014-02-20 삼성전자주식회사 영상의 예측 부호화 방법 및 장치, 그 복호화 방법 및 장치
KR101356734B1 (ko) * 2007-01-03 2014-02-05 삼성전자주식회사 움직임 벡터 트랙킹을 이용한 영상의 부호화, 복호화 방법및 장치
KR101383540B1 (ko) * 2007-01-03 2014-04-09 삼성전자주식회사 복수의 움직임 벡터 프리딕터들을 사용하여 움직임 벡터를추정하는 방법, 장치, 인코더, 디코더 및 복호화 방법
KR100846802B1 (ko) 2007-02-14 2008-07-16 삼성전자주식회사 동영상 프레임의 디코딩 방법 및 인코딩 방법
US20080240242A1 (en) * 2007-03-27 2008-10-02 Nokia Corporation Method and system for motion vector predictions
MX2009009947A (es) * 2007-04-16 2009-09-24 Toshiba Kk Metodo y dispositivo de codificacion de imagenes y de descodificacion de imagenes.
JP2008283490A (ja) 2007-05-10 2008-11-20 Ntt Docomo Inc 動画像符号化装置、方法及びプログラム、並びに動画像復号化装置、方法及びプログラム
JP2008311781A (ja) 2007-06-12 2008-12-25 Ntt Docomo Inc 動画像符号化装置、動画像復号化装置、動画像符号化方法、動画像復号化方法、動画像符号化プログラム及び動画像復号化プログラム
KR101360279B1 (ko) 2007-06-28 2014-02-13 광주과학기술원 매크로블록 단위의 변이 예측을 이용한 움직임 정보 공유방법 및 장치 및 그리고 이를 이용한 다시점 비디오 영상부호화/복호화 방법 및 장치
JP2010287917A (ja) 2007-09-26 2010-12-24 Toshiba Corp 画像符号化/画像復号化装置及び方法
CN101415122B (zh) * 2007-10-15 2011-11-16 华为技术有限公司 一种帧间预测编解码方法及装置
EP2061004A1 (en) 2007-11-14 2009-05-20 Sony Corporation Object boundary accurate motion detection using hierarchical block splitting and motion segmentation
US8908765B2 (en) * 2007-11-15 2014-12-09 General Instrument Corporation Method and apparatus for performing motion estimation
EP2081386A1 (en) * 2008-01-18 2009-07-22 Panasonic Corporation High precision edge prediction for intracoding
JPWO2010007777A1 (ja) * 2008-07-16 2012-01-05 パナソニック株式会社 画像処理装置、画像処理方法、プログラム、記録媒体および集積回路
US8503527B2 (en) 2008-10-03 2013-08-06 Qualcomm Incorporated Video coding with large macroblocks
KR101452859B1 (ko) 2009-08-13 2014-10-23 삼성전자주식회사 움직임 벡터를 부호화 및 복호화하는 방법 및 장치
US9237355B2 (en) * 2010-02-19 2016-01-12 Qualcomm Incorporated Adaptive motion resolution for video coding
KR101772459B1 (ko) * 2010-05-17 2017-08-30 엘지전자 주식회사 신규한 인트라 예측 모드
JP5833429B2 (ja) * 2011-12-20 2015-12-16 スタンレー電気株式会社 半導体製造装置
JP5852187B2 (ja) * 2014-07-16 2016-02-03 興和株式会社 視野計
JP2014195741A (ja) * 2014-07-16 2014-10-16 パナソニック株式会社 ドラム式洗濯機

Also Published As

Publication number Publication date
MY168324A (en) 2018-10-30
PL2677749T3 (pl) 2020-01-31
AU2010283121A1 (en) 2012-01-12
ZA201201158B (en) 2015-08-26
CA2820905A1 (en) 2011-02-17
RU2608264C2 (ru) 2017-01-17
CA2820901C (en) 2016-05-10
US20130279594A1 (en) 2013-10-24
US8792558B2 (en) 2014-07-29
RU2559738C2 (ru) 2015-08-10
CA2820901A1 (en) 2011-02-17
DK2677752T3 (da) 2019-10-21
US20170085882A1 (en) 2017-03-23
CN103260031A (zh) 2013-08-21
US8311118B2 (en) 2012-11-13
JP2013219825A (ja) 2013-10-24
TWI468019B (zh) 2015-01-01
JP5856267B2 (ja) 2016-02-09
CN103260029A (zh) 2013-08-21
TW201114264A (en) 2011-04-16
BR112012001514B1 (pt) 2022-02-01
CA2768182A1 (en) 2011-02-17
JP2013219824A (ja) 2013-10-24
US8811488B2 (en) 2014-08-19
ES2751334T3 (es) 2020-03-31
ZA201503389B (en) 2017-11-29
EP2677753A2 (en) 2013-12-25
EP2928186B1 (en) 2019-10-02
TW201334554A (zh) 2013-08-16
MY152395A (en) 2014-09-15
CA2877229C (en) 2016-05-10
EP2452500A4 (en) 2014-03-12
SI2677749T1 (sl) 2019-11-29
CA2877202A1 (en) 2011-02-17
EP2677752A3 (en) 2014-03-12
EP2677753B1 (en) 2019-10-02
CA2820553C (en) 2015-10-13
EP2677753A3 (en) 2014-03-12
TW201406165A (zh) 2014-02-01
RU2559740C2 (ru) 2015-08-10
US20130058415A1 (en) 2013-03-07
US8537897B2 (en) 2013-09-17
RU2015120764A (ru) 2016-12-20
US9883186B2 (en) 2018-01-30
CN103260029B (zh) 2017-04-12
LT2677749T (lt) 2019-10-25
ES2751523T3 (es) 2020-03-31
US20110038420A1 (en) 2011-02-17
RU2488972C1 (ru) 2013-07-27
PL2677753T3 (pl) 2020-01-31
RU2013112367A (ru) 2014-10-20
CN102474610A (zh) 2012-05-23
BR112012001514A2 (pt) 2016-03-15
TWI526048B (zh) 2016-03-11
BR122013019017A2 (pt) 2016-04-05
ES2751356T3 (es) 2020-03-31
CA2877229A1 (en) 2011-02-17
CA2877202C (en) 2017-06-20
JP2015019420A (ja) 2015-01-29
TW201334556A (zh) 2013-08-16
MY154795A (en) 2015-07-31
US9544588B2 (en) 2017-01-10
RU2013112250A (ru) 2014-10-20
JP5756106B2 (ja) 2015-07-29
CN104506863B (zh) 2016-11-02
PT2677749T (pt) 2019-12-17
DK2677749T3 (da) 2019-10-14
PL2677752T3 (pl) 2020-01-31
CA2820553A1 (en) 2013-10-17
JP5856268B2 (ja) 2016-02-09
DK2928186T3 (da) 2019-10-14
TWI547150B (zh) 2016-08-21
JP5624179B2 (ja) 2014-11-12
TWI432033B (zh) 2014-03-21
JP2013502141A (ja) 2013-01-17
US8787463B2 (en) 2014-07-22
TWI462593B (zh) 2014-11-21
TW201334555A (zh) 2013-08-16
TW201349875A (zh) 2013-12-01
CN104539952B (zh) 2017-07-21
PL2928186T3 (pl) 2020-01-31
US20120281764A1 (en) 2012-11-08
BR122013019016A2 (pt) 2016-04-05
CN102474610B (zh) 2016-01-20
BR122013019017B1 (pt) 2021-06-01
BR122020006091B1 (pt) 2022-01-18
TWI413417B (zh) 2013-10-21
BR122013019018B1 (pt) 2022-01-18
TW201349876A (zh) 2013-12-01
JP5571827B2 (ja) 2014-08-13
MX2011013557A (es) 2012-02-21
MY155891A (en) 2015-12-15
CN104539952A (zh) 2015-04-22
US8472525B2 (en) 2013-06-25
HRP20191791T1 (hr) 2019-12-27
US20180139448A1 (en) 2018-05-17
KR101452859B1 (ko) 2014-10-23
CN103313052A (zh) 2013-09-18
AU2010283121B2 (en) 2013-10-17
US8369410B2 (en) 2013-02-05
EP2677752B1 (en) 2019-10-09
RU2559737C2 (ru) 2015-08-10
JP2013219826A (ja) 2013-10-24
CN103313052B (zh) 2017-05-10
RU2013112365A (ru) 2014-10-20
EP2452500A2 (en) 2012-05-16
JP2015029335A (ja) 2015-02-12
CA2820905C (en) 2018-09-25
CN103260031B (zh) 2017-03-01
JP5624178B2 (ja) 2014-11-12
US20140016705A1 (en) 2014-01-16
BR122013019016B1 (pt) 2022-01-18
EP2677749A3 (en) 2014-03-12
CY1123129T1 (el) 2021-10-29
CN104506863A (zh) 2015-04-08
EP2677752A2 (en) 2013-12-25
CA2768182C (en) 2016-12-13
US20120147966A1 (en) 2012-06-14
US20130279593A1 (en) 2013-10-24
EP2928186A2 (en) 2015-10-07
KR20110017301A (ko) 2011-02-21
TWI424749B (zh) 2014-01-21
US20140334550A1 (en) 2014-11-13
ES2751973T3 (es) 2020-04-02
WO2011019247A3 (en) 2011-04-21
EP2677749A2 (en) 2013-12-25
EP2677749B1 (en) 2019-10-02
DK2677753T3 (da) 2019-10-14
WO2011019247A2 (en) 2011-02-17
RU2597521C1 (ru) 2016-09-10
US10110902B2 (en) 2018-10-23
EP2928186A3 (en) 2016-01-13

Similar Documents

Publication Publication Date Title
BR122013019018A2 (pt) aparelho de decodificação de um vetor de movimento
BR122013020551B1 (pt) Método para decodificar um vetor de movimento
EP3913923A1 (en) Method and apparatus for encoding/decoding images using a motion vector of a previous block as a motion vector for the current block
BR122020014007B1 (pt) Método para decodificar um vídeo
BR122015013887B1 (pt) Método para decodificar uma imagem
KR102114421B1 (ko) 이전 블록의 움직임 벡터를 현재 블록의 움직임 벡터로 이용하는 영상 부호화, 복호화 방법 및 장치
BR122021004640B1 (pt) Método de compensação de movimento

Legal Events

Date Code Title Description
B03A Publication of a patent application or of a certificate of addition of invention [chapter 3.1 patent gazette]
B06F Objections, documents and/or translations needed after an examination request according [chapter 6.6 patent gazette]
B15K Others concerning applications: alteration of classification

Free format text: A CLASSIFICACAO ANTERIOR ERA: H04N 7/24

Ipc: H04N 19/176 (2014.01), H04N 19/52 (2014.01), H04N

B06U Preliminary requirement: requests with searches performed by other patent offices: procedure suspended [chapter 6.21 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 13/08/2010, OBSERVADAS AS CONDICOES LEGAIS. PATENTE CONCEDIDA CONFORME ADI 5.529/DF, QUE DETERMINA A ALTERACAO DO PRAZO DE CONCESSAO.