BRPI0017304B1 - método de codificação de quadros de vídeo, terminal do assinante, e codificador de vídeo - Google Patents

método de codificação de quadros de vídeo, terminal do assinante, e codificador de vídeo Download PDF

Info

Publication number
BRPI0017304B1
BRPI0017304B1 BRPI0017304A BR0017304A BRPI0017304B1 BR PI0017304 B1 BRPI0017304 B1 BR PI0017304B1 BR PI0017304 A BRPI0017304 A BR PI0017304A BR 0017304 A BR0017304 A BR 0017304A BR PI0017304 B1 BRPI0017304 B1 BR PI0017304B1
Authority
BR
Brazil
Prior art keywords
frame
block
encoded
frames
blocks
Prior art date
Application number
BRPI0017304A
Other languages
English (en)
Other versions
BR0017304A (pt
Inventor
Jani Lainema
Original Assignee
Nokia Corp
Nokia Technologies Oy
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nokia Corp, Nokia Technologies Oy filed Critical Nokia Corp
Publication of BR0017304A publication Critical patent/BR0017304A/pt
Publication of BRPI0017304B1 publication Critical patent/BRPI0017304B1/pt

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/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/189Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding
    • H04N19/19Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding using optimisation based on Lagrange multipliers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/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/56Motion estimation with initialisation of the vector search, e.g. estimating a good candidate to initiate a search
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/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/573Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Color Television Systems (AREA)

Abstract

"método de codificação de quadros de vídeo, terminal do assinante, codificador de vídeo, e, programa de computador executando o método". o método de codificação de quadros de vídeo em um sistema telecomunicação compreende as etapas de: formar um quadro de vídeo de quadros estacionários consecutivos; armazenar os dados de reconstrução de quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; definir por meio dos dados de movimento de um ou mais blocos vizinhos codificados anteriormente os dados de movimento do bloco a ser codificado, cujo bloco vizinho é formado por meio do quadro de referência armazenado; definir os dados de reconstrução do quadro e os dados de movimento representando o bloco a ser codificado, os quais provêem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida.

Description

“MÉTODO DE CODIFICAÇÃO DE QUADROS DE VÍDEO, TERMINAL DO ASSINANTE E CODIFICADOR DE VÍDEO”.
Campo da Invenção A presente invenção relaciona a um método e a um aparelho para codificar e decodificar o quadro de vídeo no sistema de telecomunicações, quando o quadro de vídeo é constituído de uma cadeia de quadros estacionários consecutivos, na qual os quadros a serem transmitidos são tipicamente divididos em blocos ou segmentos, por exemplo, grupos de pixels, específicos para cada quadro e os dados em cada bloco do quadro tipicamente compreendem a informação indicando a luminância, a cor e a localização do bloco de quadro.
Descrição da Técnica Anterior Ao transferir os quadros dc vídeo nos sistemas de telecomunicações, tal como os fones de vídeo, sistemas de vídeo conferência ou conexão Internet, é uma tarefa em demanda devido à ampla quantidade de dados necessários para transferir o quadro de vídeo, uma vez que, mais bits são necessários para transferir os dados e uma taxa de transmissão de dados mais elevada deve ser usada. Vários métodos têm sido desenvolvidos para solucionar este problema, Para transferir um quadro, o quadro é usualmente dividido em blocos de quadros cujo tamanho é selecionado para adequar ao sistema. A informação do bloco de quadro geralmente compreende a informação na luminância, na cor e na localização do bloco de quadro no próprio quadro. Os dados do bloco de quadro são compactados por cada bloco usando o método de codificação desejado. A compressão é baseada na remoção dos dados menos significativos. Os métodos de compactação são divididos primeiramente em três classes: redução dc redundância espectral, redução dc redundância espacial c redução dc redundância temporal. Várias combinações destes métodos são tipicamente usadas na compressão. O método dc cor YUV. por exemplo, c aplicado a redução de redundância espectral. O modelo de cor YUV utiliza o fato de que o olho humano é mais sensível a mudanças na luminância do que na cominância, isto é na cor. O modelo YUV tem um componente de luminância Y e dois componentes de erominância (U, V), Os componentes de crominância são também sub-amostrados. Por exemplo, o bloco de luminância de acordo com a codificação de vídeo padrão H.263 é de 16x16 pixels, e ambos os blocos de crominância, o qual cobre a mesma área como do bloco de luminância, são de 8x8 pixels. A combinação de um bloco de luminância e dois blocos de crominância é neste padrão denominado de macro bloco.
Para reduzir a redundância espacial, uma transformação de co-seno discreta (DCT), por exemplo, é usada, na qual o bloco a ser compactado é preferivelmente de 8x8 pixels. Na DCT, a apresentação do pixel do bloco de quadro é transformada em uma apresentação de ffeqüência-espaço. Em adição, apenas as ffeqüências de sinal que existem em um bloco de quadro têm coeficientes de alta-amplitude, considerando que os coeficientes dos sinais que não existem no bloco de quadro são próximos de zero. A DCT é também uma transformação de pouca-perda e a interferência é causada ao sinal apenas na quantização. A redundância temporal pode ser reduzida utilizando o fato de que os quadros consecutivos usualmente assemelham-se a cada outro, assim ao invés de compactar cada quadro individual, os dados de movimento dos blocos de quadro são gerados. O principio básico é como a seguir: tão bom quanto possível o bloco de referência o qual tem sido codificado anteriormente é encontrado para o bloco de quadro a ser codificado, o movimento entre o bloco de referência e o bloco de quadro a ser codificado é modelado e os coeficientes de vetor de movimento calculado são transmitidos para o receptor. A diferença entre o bloco a ser codificado e o bloco de referência é indicada como um componente ou quadro de erro de predição. O problema é encontrar um bloco de referência o qual produz uma boa eficiência de codificação quanto possível (uma qualidade de imagem suficientemente boa com uma menor quantidade de bits quanto possível) e um alto cálculo da capacidade, e assim também o tempo de cálculo, solicitado pela comparação.
Breve Descrição da Invenção É um objeto da invenção prover um método melhorado para codificar os quadros de vídeo, um codificador de vídeo melhorado e um terminal do assinante melhorado. A invenção é baseada no uso dos dados de reconstrução do quadro de um ou mais quadros de referência ou blocos de referência e de um ou mais blocos vizinhos codificados anteriormente na codificação dos dados de reconstrução do quadro. Os dados de reconstrução do quadro e os dados de movimento codificados com o método da invenção ou com outro método conhecido é selecionado para uso dependendo de como a eficiência de codificação desejada é obtida com uma qualidade suficiente de imagem.
Este é alcançado pelo método de codificação de quadros de vídeo em um sistema telecomunicação, que compreende: - formar um quadro de vídeo de quadros estacionários consecutivos; - armazenar os dados de reconstrução de quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - definir por meio dos dados de movimento de um ou mais blocos vizinhos codificados anteriormente os dados de movimento do bloco a ser codificado, cujo bloco vizinho é formado por meio do quadro de referência armazenado; - definir os dados de reconstrução do quadro do quadro a ser codificado; - selecionar para uso os dados de reconstrução do quadro e os dados de movimento representando o bloco a ser codificado, os quais provêem uma eficiência de codificação pré-defmida com uma qualidade de imagem pré-definida.
Este é alcançado pelo método de codificação de quadros de vídeo em um sistema de telecomunicação, que compreende: - formar um quadro de vídeo dos quadros estacionários consecutivos; - armazenar os dados de reconstrução do quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - definir os dados de movimento de um bloco de quadro a ser codificado usando apenas os blocos vizinhos que tem o mesmo quadro de referência usado para codificar os dados de reconstrução do quadro do bloco a ser codificado; - selecionar para uso os dados de reconstrução do quadro e os dados de movimento, os quais provêem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida. A invenção também relata um terminal do assinante que compreende: - dispositivo para formar um quadro de vídeo dos quadros estacionários consecutivos; - dispositivo para armazenar os dados de reconstrução de quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - dispositivo para definir por meio dos dados de movimento de um ou mais blocos vizinhos codificados anteriormente os dados de movimento do bloco a ser codificado, cujo bloco vizinho é formado por meio do quadro de referência armazenado; - dispositivo para definir os dados de reconstrução do quadro do quadro a ser codificado; - dispositivo para selecionar o uso dos dados de reconstrução do quadro e os dados do movimento representando o bloco a ser codificado, os quais provêem uma eficiência de codificação pré-defínida com uma qualidade de imagem pré-definida. A invenção também relaciona a um terminal do assinante que compreende: - dispositivo para formar um quadro de vídeo dos quadros estacionários consecutivos; - dispositivo para armazenar os dados de reconstrução do quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - dispositivo para definir os dados de movimento do bloco de quadro a ser codificado usando apenas os blocos vizinhos que possuem o mesmo quadro de referência usado para codificar os dados de reconstrução do quadro do bloco a ser codificado; - dispositivo para selecionar para uso os dados de reconstrução do quadro e os dados de movimento, os quais provêem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida. A invenção também relaciona a um codificador de vídeo que compreende: - dispositivo para formar um quadro de vídeo dos quadros estacionários consecutivos; - dispositivo para armazenar os dados de reconstrução do quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; ■ dispositivo para definir por meio dos dados de movimento de um ou mais dos blocos vizinhos codificados anteriormente os dados de movimento do bloco a ser codificado, cujo bloco vizinho é formado por meio do quadro de referência armazenado; - dispositivo para definir os dados de reconstrução do quadro do quadro a ser codificado; - dispositivo para selecionar para uso os dados de reconstrução do quadro e os dados de movimento representando o bloco a ser codificado, os quais proveem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-defmida. A invenção também relaciona a um codificador de vídeo que compreende: - dispositivo para formar um quadro de vídeo dos quadros estacionários consecutivos; - dispositivo para armazenar os dados de reconstrução do quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - dispositivo para definir os dados de movimento do bloco de quadro a ser codificado usando apenas os blocos vizinhos os quais possuem o mesmo quadro de referência usado para codificar os dados de reconstrução do quadro do bloco a ser codificado; - dispositivo para selecionar para uso os dados de reconstrução do quadro e os dados de movimento, os quais fornecem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida. A invenção também relaciona a um programa de computador o qual pode ser lido pelo computador e o qual executa o método de codificação dos quadros de vídeo no sistema de telecomunicações, o qual compreende: - formar um quadro de vídeo dos quadros estacionários consecutivos; - armazenar os dados de reconstrução do quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - definir por meio dos dados de movimento de um ou mais blocos vizinhos codificados anteriormente os dados de movimento do bloco a ser codificado, cujo bloco vizinho é formado por meio do quadro de referência armazenado; - definir os dados de reconstrução do quadro do quadro a ser codificado; - selecionar para uso os dados de reconstrução do quadro e os dados de movimento representando o bloco a ser codificado, os quais provêem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida. A invenção também relaciona a um programa de computador o qual pode ser lido pelo computador e o qual executa o método de codificação dos quadros de vídeo no sistema de telecomunicações, o qual compreende: - formar um quadro de vídeo dos quadros estacionários consecutivos; ■ armazenar os dados de reconstrução do quadro de pelo menos um quadro como um quadro de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - definir os dados de movimento de um bloco de quadro a ser codificado usando apenas os blocos vizinhos os quais possuem o mesmo quadro de referência usado para codificar os dados de reconstrução do quadro do bloco a ser codificado; - selecionar para uso os dados de reconstrução do quadro e os dados de movimento, os quais provêem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida. O método e o aparelho da invenção fornecem economias no tempo de cálculo e na capacidade enquanto a qualidade da imagem permanece adequada.
Breve Descrição das Figuras A seguir, a invenção será descrita por meio das incorporações preferidas, com referência aos desenhos apensos, nos quais: Figura 1 - ilustra um exemplo do sistema de telecomunicações;
Figura 2a a 2c - ilustra um processo de estimação dos vetores usando um quadro de referência;
Figura 3 - ilustra um processo de estimação de um vetor de movimento usando os blocos vizinhos;
Figura 4 - é um fluxograma o qual apresenta os passos do método de encontrar um bloco de referência e a predição do vetor de movimento;
Figura 5 - ilustra um exemplo de encontrar um bloco de referência e a predição do vetor de movimento;
Figura 6 - ilustra um exemplo de codificador;
Figura 7 - ilustra um exemplo de um decodificador;
Figura 8 - ilustra um exemplo de um terminal do assinante;
Figura 9 - ilustra um segundo exemplo de encontro de um bloco de referência e a predição do vetor de movimento.
Descrição Detalhada da Invenção A Figura 1 ilustra de uma maneira simplificada um sistema de transmissão de dados digital para o qual a solução da invenção pode ser aplicada. Este é uma parte do sistema de radio celular compreendendo uma estação base 104 a qual está em contato de rádio 108 e 110 com os terminais do assinante 100 e 102 os quais podem ter terminais instalados fixamente ou em um veículo ou terminais portáteis. Os transceptores na estação base são conectados a uma unidade de antena, com a qual o enlace de rádio para os terminais do assinante é implementado. A estação base está também em contato com o controlador da estação base 106, o qual transmite as conexões dos terminais em outra parte da rede. O controlador da estação base controla de maneira centralizada várias estações base conectadas a este. A unidade de controle no controlador da estação base gerencia o controle de chamada, o controle do tráfego de dados, o gerenciamento de mobilidade, a coleção de estatísticas, e a sinalização. O sistema de rádio celular pode também ter uma conexão à rede de telefonia pública, neste caso o transcodificador pertencendo ao sistema transforma os diferentes formatos de codificação digital de voz usado entre a rede de telefonia pública e a rede de rádio celular para adequar a cada outro, por exemplo, do formato de 64 kbit/s da rede fixa para o formato da rede de rádio celular (por exemplo, 13 kbit/s) e vice versa. E óbvio para uma pessoa versada na técnica que a invenção pode também ser aplicada aos sistemas de telecomunicação fixo, tal como a Internet. O objetivo da codificação de um quadro de vídeo é reduzir o número de bits solicitado para transferir o quadro. As Figuras 2a a 2c apresentam de uma maneira simplificada o método de codificação do movimento da técnica anterior, o qual é baseado na predição do vetor de movimento do bloco de quadro (o termo bloco é também usado no texto) usando o quadro de referência armazenado anteriormente na memória. Este tipo de codificação é denominada de inter-codificação, o que significa utilizar as similaridades entre os quadros na cadeia de quadros na codificação de compressão.
No exemplo das Figuras 2a a 2c, o quadro de referência 206 tem sido dividido em blocos ou segmentos e, codificados anteriormente. As Figuras 2b a 2c não apresentam os blocos de quadro. O quadro de referência pode estar antes ou após o quadro a ser codificado na cadeia de quadros. A Figura 2a apresenta o quadro atual sendo codificado 204, o qual é também dividido em blocos, dos quais apenas um bloco 200 é apresentado para uma melhor compreensão. O tamanho dos blocos é N x M. Os blocos são tipicamente quadrados, isto é N=M, mas pode também ser retangular, por exemplo, na sua geometria. O bloco atual 200 e o bloco de referência 214 apresentado na Figura 2c não necessitam ser geometricamente similar, porque na realidade, também, os objetos filmados mudam, tal como girar ou rotacionar. O tamanho e a forma do bloco é definido de forma adequada a cada situação levando em consideração os assuntos a seguir, por exemplo: um bloco de tamanho pequeno provê uma melhor imagem, mas reduz a confiabilidade do vetor de movimento definido, porque a definição é feita por meio de apenas alguns pixels. Mais os dados de vetor de movimento devem também ser gerados, se blocos menores forem usados, por isso então o quadro deve ser dividido em um maior número de blocos. Em adição, os algoritmos rápidos na definição dos vetores de movimento são mais eficientes quando o tamanho do bloco é maior. Por exemplo, em alguns dos padrões de codificação de vídeo atual N = M = 16.
Para estimar o movimento, associando o bloco de referência quanto for possível é encontrado no quadro de referência 206 para o bloco 200 a ser codificado, este sendo 214 na Figura 2c. A adequação dos blocos de referência depende do critério de seleção. O propósito do critério de seleção é tipicamente encontrar um bloco, por meio do qual é possível minimizar o número de bits requerido, para transferir o bloco sendo codificado de tal maneira que a qualidade da imagem permanece suficientemente boa. Assim, o critério de seleção pode variar dependendo do objeto da aplicação. A busca é executada usualmente no quadro de referência 206 em uma área a qual está em uma localização de quadro correspondendo ao bloco 200 sendo codificado no quadro atual 204 e em uma certa área em uma proximidade imediata, descrita pela área de busca 210 nas Figuras 2b e 2c. Ao limitar a área de busca como menor do que todo o quadro de referência, o tempo usado na busca e o cálculo solicitado são reduzidos. O tamanho da área de busca é definido adequado ao objeto da aplicação, por exemplo, ao determinar com base nos quadros do quadro em cadeia codificado anteriormente, se o movimento for devagar ou rápido; se o movimento for devagar, a área de busca pode ser limitada a menor do que se o movimento for rápido. A busca é tipicamente conduzida nas vizinhanças do vetor de movimento predito. A localização do bloco de quadro é neste exemplo das Figuras 2a a 2c indicada com as coordenadas (x, y) no canto esquerdo superior do bloco. A coordenada x indica a localização do pixel ou do bloco na direção horizontal e a coordenada y a localização do pixel ou bloco na direção vertical. As coordenadas do bloco sendo codificadas são marcadas como 202. Na Figura 2c, o melhor possível bloco do quadro de referência 214 tem sido encontrado na área de busca 210. As coordenadas (x, y) 208 são estas da localização, onde o bloco 200 sendo codificado seria se este não tiver sido movido e assim o mesmo das coordenadas 202. Elas são apresentadas para o propósito de ilustração. O bloco 212 descreve que o bloco 200 não tinha movido e é também apresentado para propósito de ilustração. O movimento do bloco do quadro sendo codificado pode agora ser indicado como uma troca de coordenadas (x+u, y+v) 216 para as coordenadas (x, y) 208. Em geral, as coordenadas (x, y) são definidas como origo, assim o vetor de movimento 218 do bloco sendo codificado pode ser indicado como as coordenadas (u, v). O vetor de movimento pode também ser indicado usando a definição dos coeficientes do vetor de movimento e dos modelos de movimento. A Figura 3 apresenta de uma maneira simplificada os métodos de codificação de movimento da técnica anterior, os quais são baseados na predição dos coeficientes do vetor de movimento do bloco de quadro sendo codificado usando os blocos vizinhos codificados anteriormente do quadro sendo codificado. Os blocos vizinhos do bloco de quadro 304 sendo codificado, os quais já foram codificados anteriormente e os quais são usados para predizer os coeficientes de vetor de movimento do bloco do quadro sendo codificado são aqui referenciados como candidatos de predição. Na Figura 3, os candidatos de predição são os blocos vizinhos 300,302, 306. Os candidatos de predição 300, 302, 306 são no exemplo da Figura 3 marcados para identificar com certas localizações de pixel 308, 310, 312. O candidato de predição 306 está no lado esquerdo do bloco sendo codificado e marcado com a localização do pixel 308, o candidato de predição 300 está acima do bloco sendo codificado e marcado com a localização de pixel 310 e o candidato de predição 302 está no canto direito superior do bloco sendo codificado e marcado com a localização de pixel 312. Como visto da Figura 3, as localizações de pixel 308, 310,312 residem nos seus blocos em uma proximidade próxima do bloco 304 sendo codificado. Deveria ser observado que o número e a localização dos blocos vizinhos com relação ao bloco sendo codificado pode diferenciar destes apresentados na Figura 3.
No caso apresentado na Figura 3, todos os três candidatos de predição são usados na predição dos coeficientes do vetor de movimento do bloco 304 sendo codificado. Os coeficientes do vetor de movimento requerido podem, por exemplo, ser predito como um mediano dos coeficientes de vetor de movimento obtido destes candidatos de predição. É também possível usar apenas um candidato de predição na predição dos coeficientes do vetor de movimento do bloco 304, neste caso os coeficientes são obtidos dos coeficientes do vetor de movimento do bloco de predição 306, os coeficientes do vetor de movimento do bloco de predição 300 ou dos coeficientes do vetor de movimento do bloco de predição 302.
Os blocos vizinhos codificados anteriormente que são mais distantes do que na proximidade imediata podem também ser usados, mas neste caso deveria ser levado em consideração que a diferença no movimento dos blocos usualmente aumenta enquanto a distância aumenta. A codificação inter e intra tipicamente são combinadas bloco a bloco na codificação dos quadros de vídeo para obter o melhor resultado possível. O quadro codificado-intra pode ser enviado em intervalos adequados para prevenir o acúmulo de possíveis erros causados pelo canal de transmissão de um quadro para outro, fmalmente ocasionando a falha da decodificação do quadro.
Os métodos apresentados nas Figuras 2a a 2c e 3 podem ser usados em ambos na codificação e na decodificação. O método usado pelo codificador com os dados do quadro necessários é transmitido para o decodificador como um fluxo de bit.
Deveria ser observado que como apresentado na Figura 3, os blocos podem também ser segmentados. A segmentação é preferível em situações onde partes diferentes do quadro movem de diferentes formas, por exemplo, o fundo permanece o mesmo enquanto um único objeto, tal como uma pessoa, um carro ou similar, move. O bloco do quadro pode ser segmentado ao dividir este em segmentos verticalmente, como no bloco 300, horizontalmente, do qual não existe exemplo, ou em ambas as direções, como no bloco 306. Pela segmentação, é também possível reduzir o número de bits sendo transferido usando uma parte adequada de outro quadro já codificado.
Ao definir os coeficientes do vetor de movimento do bloco de quadro sendo codificado, vários modelos conhecidos para a estimação de movimento são utilizados. Os modelos diferentes são adequados para definir diferentes movimentos, tal como apresentando movimento vertical e horizontal ou apresentando a rotação. Tais modelos incluem o modelo de movimento afim no qual o movimento de um pixel, o segmento do quadro ou bloco é indicado pela fórmula na qual Δχ e Ay formam o vetor de movimento: Δχ (x, y) = ao + ajx + a2y (1) Ay (x, y) = b0 + bjx + b2y onde ao, ai, a2, bo, b| e b2 são coeficientes do vetor de movimento e x e y são componentes vetores, dos quais x indica a localização do pixel ou um bloco na direção horizontal e y a localização do pixel ou bloco na direção vertical, ou o modelo de translação no qual o movimento do pixel, o segmento do quadro ou bloco é indicado pela fórmula na qual Δχ e Ay formam o vetor de movimento: Δχ (x, y) = ao (2) Ay (x, y) = b0 onde ao e bo são coeficientes do vetor de movimento e x e y são componentes vetores. Os modelos de movimento usados são armazenados na memória de ambos o codificador e do decodificador. Se vários modelos de movimento forem usados na codificação, o codificador seleciona o modelo de acordo com o movimento (ex. com o movimento ascendente, o modelo indicando que o modelo ascendente é usado na codificação) e a informação do modelo usado é transmitida para o decodificador junto com os coeficientes de movimento. A Figura 4 é um fluxograma apresentando os passos do método para a codificação do quadro de vídeo. Na descrição a seguir, o bloco do quadro refere, por exemplo, por bloco, segmento ou macro bloco de acordo com o modelo YUV formado pelos pixels. A execução do método inicia no bloco 400.
No bloco 402, o quadro de vídeo é formado dos quadros estacionários consecutivos. Para formar o quadro de vídeo, os quadros estacionários são enviados preferivelmente na velocidade na qual o sistema visual humano não mais distingue os quadros separados de cada outro.
No bloco 404, os dados de reconstrução codificados dos blocos do quadro (ex. a cor e a luminância dos pixels e o quadro do erro de predição obtidos do cálculo dos coeficientes do vetor de movimento) são armazenados na memória. Os dados de reconstrução do quadro são codificados de acordo com o padrão aplicado, por exemplo, H.263 ou MPEG. A definição dos coeficientes do vetor de movimento e o quadro de erro de predição são descritos acima. Um ou mais quadros de referência são formados dos dados de reconstrução do quadro armazenados na memória. Em adição, os dados de movimento dos blocos vizinhos codificados anteriormente, isto é os coeficientes do vetor de movimento e possivelmente o modelo de movimento usado, são armazenados na memória. E mais preferível usar os blocos vizinhos na proximidade próxima ao bloco sendo codificado, mas algumas vezes é também possível usar os blocos codificados anteriormente mais distante no quadro.
No bloco 406, os dados de movimento do bloco sendo codificados são definidos por meio dos blocos vizinhos codificados anteriormente, preferivelmente usando os coeficientes do vetor de movimento de um ou mais blocos vizinhos.
No bloco 408, os dados de reconstrução do bloco sendo codificados são definidos usando o quadro de referência, por exemplo. O método pode ser intensificado pelo cálculo dos dados de movimento do bloco do quadro sendo codificado usando apenas os blocos vizinhos, os quais possuem o mesmo quadro de referência que foi usado para codificar os dados de reconstrução do quadro do bloco sendo codificado. Similaridades muitas vezes existem entre os quadros na mesma cadeia do quadro, assim é provável que ou o bloco correspondendo ao bloco sendo codificado é encontrado ou o bloco que é similar o suficiente é encontrado no quadro codificado anteriormente, do qual um bloco de referência adequado já tem sido encontrado para o bloco vizinho codificado anteriormente. Por exemplo, os coeficientes do vetor de movimento de um ou mais blocos vizinhos são usados e a área de busca do bloco de referência do bloco sendo codificado está restrita no quadro de referência para o modelo definido pelos coeficientes do vetor de movimento do bloco vizinho.
Na situação na qual apenas um bloco vizinho inter-codificado possui o mesmo quadro de referência do bloco sendo codificado, o vetor de movimento deste bloco vizinho é selecionado como um vetor de movimento candidato, outro candidato pode, por exemplo, ser um mediano calculado de vários vetores de movimento do bloco vizinho.
Deveria ser observado que o bloco, que é usado na codificação do bloco, é codificado da mesma maneira (inter) com a qual o bloco sendo codificado será codificado, isto é, se o bloco vizinho for intra-codifícado, este não possui quadro de referência. Se não existe candidato de predição possuindo um quadro de referência, a intra codificação da técnica anterior pode ser usada ou todos os quadros de referência armazenados na memória podem ser verificados. O bloco de referência é o bloco do quadro que o codificador de vídeo, isto é, o codificador com o qual os dados de reconstrução do quadro do bloco do quadro são codificados, usa na codificação de compressão. O bloco do quadro, que é uma associação quanto possível com o bloco sendo codificado e o qual foi buscado de um ou mais quadros de referência que foram codificados anteriormente e armazenados na memória, é selecionado como bloco de referência, desse modo o quadro de erro de predição permanece tão pequeno quanto possível.
No bloco 410, o método de codificação é selecionado, com o qual os dados de reconstrução do quadro e os dados de movimento do bloco do quadro sendo codificado podem ser codificados mais vantajosamente, isto é, uma eficiência de codificação pré-definida é buscada com uma qualidade de imagem pré-definida. Deveria ser observado que como o método de codificação do bloco sendo codificado ou a codificação acima mencionada por meio dos dados de movimento dos blocos vizinhos é selecionado, ou qualquer método da técnica anterior, tal como codificação-inter, na qual o bloco sendo codificado é codificado diretamente por meio do bloco de referência encontrado do quadro de referência. Ao selecionar o método de codificação, o objetivo pode, por exemplo, ser para realizar o número de bits tão pequeno quanto possível, enquanto que a qualidade da imagem corresponde a da imagem de vídeo normal ou para realizar o número de bits que associa a do padrão usado, mesmo através de um menor número de bits ser suficiente para alcançar uma qualidade de imagem de acordo com o objeto de aplicação. A eficiência da codificação pode ser estimada por meio da função Langrangian, por exemplo, a qual define a segmentação mais efetiva e a codificação e a qual r e: L(Sk) = D(Sk)UR(Sk) (3) Onde: D(Sk) é um erro criado na des-propagação do quadro; R(Sk) é o número de bits requerido para transferir o quadro, e λ é a constante Langrangian. A função Langrangian descreve a conexão entre a qualidade do quadro sendo transferido e a largura de banda requerida no caminho de transmissão; em geral, a imagem de alta qualidade, a maior largura de banda. A seleção da codificação de compressão mais vantajosa é sempre um compromisso entre o número requisitado de bits e a qualidade da imagem. A seta 412 descreve a habilidade de repetição do método bloco a bloco até o quadro ser codificado. Deveria ser observado que o método é repetido preferivelmente até todos os quadros na cadeia dos quadros serem codificados. A execução do método termina no bloco 414. A Figura 5 ilustra um exemplo dos vetores de movimento de predição e encontra o bloco de referência, quando apenas os blocos vizinhos são usados, os quais possuem o mesmo quadro de referência que foi usado na codificação dos dados de reconstrução do quadro do bloco sendo codificado. Deveria ser observado que na codificação do bloco, os métodos da técnica anterior são usualmente também usados. No final, o método de codificação é selecionado para uso, o qual provê a eficiência de codificação desejada com uma qualidade suficiente de imagem. A página do quadro 500 sendo codificada é dividida em blocos, dos quais apenas alguns são apresentados para uma melhor compreensão. O bloco 506 é um sendo codificado. Os quadros 502, 504, 532 e 508 são os quadros de referência armazenados na memória. O quadro de referência dos blocos 510 e 514 dos blocos vizinhos codificados anteriormente, marcados como número 1, é o quadro 502. O bloco 506 sendo codificado e os blocos de referência 510 e 514 não tendo movido no quadro 500 em comparação com o quadro 502. O quadro de referência do bloco vizinho 512, marcado como 2 na figura, é o quadro 504 e o quadro de referência do bloco vizinho 516, marcado como número 4 na figura, é o quadro 508. Os blocos no quadro 500 têm movido em comparação com os quadros 504 e 508.0 quadro 532 não tem sido usado na codificação, quaisquer dos blocos vizinhos do bloco 506 sendo codificado, isto é, este não é um quadro de referência de qualquer bloco vizinho, assim o quadro 532 não é usado neste exemplo para encontrar o bloco de referência para o bloco 506 sendo codificado. A seguir, os blocos vizinhos 510 e 514 são usados como candidatos de predição dos vetores de movimento do bloco 506 sendo codificado. A verificação é realizada para ver se o tipo de codificação (inter) dos candidatos de predição é a mesma de um a ser usado na codificação do bloco atual. Se for assim, o bloco 526 é usado como o bloco de referência e os coeficientes do vetor de movimento são obtidos pelo cálculo da média ou mediano dos coeficientes do vetor de movimento, os quais têm sido obtidos pela comparação da localização dos blocos 510 e 518, dos quais os coeficientes do vetor de movimento têm sido obtidos para o bloco vizinho 510, e a localização dos blocos 514 e 520, dos quais os coeficientes do vetor de movimento têm sido obtidos para o bloco vizinho 514. Em adição, o quadro de erro de predição é definido pela comparação do bloco 506 sendo codificado com o bloco de referência 526. No exemplo da Figura 5, a localização do bloco nos quadros 500 e 502 não tem alterado, assim os coeficientes do vetor de movimento não são definidos. A seguir, o tipo de codificação do bloco vizinho 512 é verificado. Se este for o mesmo do usado no bloco atual 506, o bloco de referência é buscado para no quadro 504 e os coeficientes do vetor de movimento obtidos da comparação dos blocos 512 e 522 são usados como os coeficientes do vetor de movimento do bloco 506. O quadro de erro de predição é então definido por meio do bloco de referência 528. A seguir, o tipo de codificação do bloco vizinho 516 é verificado. Se este for o mesmo a ser usado no bloco atual 506, o bloco de referência é buscado para no quadro 508 e os coeficientes do vetor de movimento obtidos da comparação dos blocos 516 e 524 são usados como os coeficientes do vetor de movimento do bloco 506. O quadro de erro de predição é então definido por meio do bloco de referência 530.
Os coeficientes do vetor de movimento para o bloco 506 podem também ser definidos pelo cálculo de um mediano ou média dos coeficientes do vetor de movimento dos blocos 510,512 e 514.
Assim, se vários modelos de movimento forem usados, o modelo de movimento usado é indicado. O bloco 534 é intra-codificado, assim este não tem um quadro de referência e não é usado na codificação do bloco 506, se um método de codificação preferível é por outro lado encontrado. O número e a localização dos blocos vizinhos e o número dos quadros de referência armazenados podem diferir do que é apresentado na Figura 5. A Figura 9 ilustra um segundo exemplo dos vetores de movimento de predição e encontra o bloco de referência. Neste exemplo, o bloco sendo codificado é codificado por meio de apenas um bloco vizinho, se apenas um bloco vizinho tiver sido intra-codificado e este bloco vizinho tiver o mesmo quadro de referência do bloco sendo codificado. O quadro 900 sendo codificado é dividido em blocos, dos quais apenas alguns são apresentados por motivo de compreensão. O bloco 912 é um sendo codificado. Os quadros 902,904 e 906 são quadros de referência armazenados na memória. O quadro de referência do bloco vizinho codificado anteriormente 914 (marcado como 1) é o quadro 902 e o quadro de referência do bloco 910 (marcado como 2) é o quadro 904. O bloco 908 é intra-codificado, assim este não possui um quadro de referência. O exemplo na Figura 9 testa se para o bloco 912 sendo codificado adequado aos blocos de referência podem ser encontrados todos os quadros de referência armazenados na memória, isto é os quadros 902, 904, 906 neste exemplo. Ao testar se o quadro 902 possui um bloco de referência adequado, o vetor de movimento do bloco 914 é usado como candidato de predição do vetor de movimento, uma vez que o bloco 914 é apenas um dos três blocos vizinhos, cujo quadro de referência é o quadro 902. Ao testar se o quadro 904 possui um bloco de referência adequado, o vetor de movimento do bloco 910 é usado como candidato de predição do vetor de movimento, uma vez que o bloco 910 é apenas um dos três blocos vizinhos, cujo quadro de referência é o quadro 904.0 quadro 906 não é o quadro de referência para quaisquer dos blocos vizinhos, assim no caso descrito no exemplo, o vetor de movimento é predito usando o mediano dos blocos 910, 914 e 908, por exemplo, neste caso o vetor de movimento do bloco inter-codificado 908 é estabelecido para zero.
Deveria ser observado que na predição os vetores de movimento do bloco sendo codificado, é possível para uso não apenas dos dados de movimento dos blocos vizinhos e dos dados do quadro de referência, mas também a informação de segmentação do macro bloco, por exemplo, para o qual o bloco sendo codificado pertence. O número e a localização dos blocos vizinhos e o número dos blocos de referência armazenados podem diferir do apresentado na Figura 9. A Figura 6 apresenta um exemplo de um codificador com o qual o método acima mencionado de codificação de quadros de vídeo pode ser implementado. O princípio de projeto dos codificadores de vídeo é minimizar o quadro de erro de predição E„(x, y) 600 entre o bloco sendo codificado In(x, y) 620 e o candidato de predição (o bloco de predição selecionado) P„(x, y) 612. O quadro de erro de predição é definido como uma diferença entre o bloco sendo codificado 620 e o candidato de predição 612, o qual é obtido em um somador 632, assim: En(x,y) = In(x,y)-Pn(x,y) (4) O bloco de predição 612 é obtido pelo método de acordo com a incorporação preferida da invenção pelo uso do quadro de referência selecionado e dos vetores de movimento. Os coeficientes dos vetores de movimento Ax(x, y), Ay(x, y) são formados no bloco 630 de cálculo do vetor de movimento como o somatório dos vetores de movimento preditos e encontra diferentes coeficientes. Os coeficientes do vetor de movimento preditos são, de acordo com a incorporação preferida da invenção, obtida usando os vetores de movimento dos blocos vizinhos os quais possuem o mesmo quadro de referência do bloco sendo codificado. Outros métodos são também usados nos vetores de movimento de predição, um deles é o método da técnica anterior no qual o bloco sendo codificado é codificado diretamente por meio do quadro de referência. O grupo dos vetores de movimento de todos os pixels no quadro é denominado de campo do vetor de movimento. Porque existe um grande número de pixels no quadro, o quadro é na prática dividido em blocos na codificação de vídeo e a informação de movimento é transmitida bloco a bloco para o decodificador receptor apresentado na Figura 7.
Ao menos um vetor de movimento selecionado dos vetores de movimento preditos ou dos campos do vetor de movimento formado deles são codificados no bloco de codificação do vetor de movimento 628. Os modelos de movimento bem conhecidos na técnica, por exemplo, dos quais exemplos são apresentados acima, são usados na codificação. Os vetores de movimento codificados ou os campos do vetor de movimento formados deles são transmitidos para o multiplexador 624.
No bloco 618, o quadro é formado dos blocos do quadro segmento por segmento ou bloco por bloco. O bloco de referência ou candidato de predição é do formato: P„(x, y) = Rk„[x +~Δχ(χ, y), y + ~Ay(x, y)] (5) onde um ou mais quadros de referência Rkn(x, y) 622 são armazenados na memória 610 e onde x e y são componentes vetores, x apresentando a localização do pixel, o segmento do quadro ou bloco na direção horizontal e y na direção vertical, e ~Δχ e ~Ay formando o vetor de movimento do pixel, o segmento do quadro ou bloco.
No bloco 602, o quadro de erro de predição E„(x, y) 600 é codificado, o qual é tipicamente apresentado como uma transformação de série 2-dimensional finita, por exemplo, por meio da transformação de co-seno discreta (DCT). Os coeficientes obtidos pela transformação DCT são quantizados e codificados antes de transmiti-los para o multiplexador 624 e o decodificador receptor apresentado na Figura 7. O codificador também compreende um bloco decodificador 606 no qual o quadro de erro de predição En(x, y) é decodificado. Este quadro de erro de predição Έπ(χ, y) 608 é adicionado no somador 634 para o bloco de predição P„(x, y) 612 e o bloco decodificado ~In(x, y) é obtido como um resultado, do qual um novo bloco de referência é obtido, ou pela combinação dos blocos pertencendo à mesma página, o quadro de referência 614 é obtido e armazenado na memória 610, Assim, ambos o codificador de vídeo transmissor e o codificador de vídeo receptor possuem o mesmo quadro de referência ou bloco para uso.
No multiplexador 624, a informação contendo a informação do vetor de movimento é combinada com o quadro de erro de predição e esta informação de quadro 616 é transmitida para o decodificador (Figura 7).
As funções do codificador de vídeo descritas acima podem ser implementadas de várias formas, por exemplo, pelo programa executado no processador ou pelo hardware, tal como uma construção lógica dos componentes separados ou ASIC (circuito integrado de aplicação específica). A Figura 7 apresenla um exemplo do codificador, por meio do qual o método descrito acima para reduzir a redundância temporal na transferência do quadro de vídeo pode ser implementado. O quadro de erro de predição codificado 702 e os coeficientes do vetor de movimento codificado ou os coeficientes dó campo vetor de movimento 712 do sinal de vídeo recebido 700 são separados um do outro no demultiplexador 710.
Na memória 716 do decodificador, existe ao menos um bloco vizinho codificado anteriormente e/ou o quadro de referência Rkn(x, y) 722 dividido em blocos. Os mesmos blocos de quadro e/ou quadro de referência são armazenados na memória do codificador e do decodificador.
No bloco 714, o candidato de predição P„(x, y) 718 é formado da mesma maneira que no bloco codificador 618 (Figura 6). O quadro de erro de predição decodificado ~En(x, y) 706 é formado no bloco 704.
No somador 720, o quadro de erro de predição decodificado Έη(χ, y) 706 e o candidato de predição Pn(x, y) 718 são juntos adicionados. Este produz o bloco decodificado ln(x, y) 708 do formato: ~In(x, y) = Pn(x, y) + ~E„(x, y) (6) = Rkn [x +~Δχ(χ, y), y +~Ay(x, y)] Έη(χ, y) onde um ou mais blocos vizinhos codificados anteriormente e/ou o quadro de referência Rk„(x, y) 722 dividido em blocos é armazenado na memória 716 e onde x e y são componentes vetores, dos quais x indica a localização do pixel ou um bloco na direção horizontal e y a localização do pixel ou bloco na direção vertical, e ~Δχ e ~Ay formam o vetor de movimento do pixel, o segmento do quadro ou bloco.
As funções do codificador de vídeo descritas acima podem ser implementadas de várias formas, por exemplo, por programa executado no processador ou por hardware, tal como uma construção lógica dos componentes separados ou ASIC (circuito integrado de aplicação específica). A Figura 8 ilustra um terminal do sistema de rádio, por meio do qual o método da incorporação preferida da invenção pode ser implementado. O transmissor do terminal do assinante 824 e o transmissor do elemento de rede do sistema de rádio executam parcialmente as mesmas tarefas. O terminal 824 pode, por exemplo, ser um telefone móvel ou um microprocessador incluindo partes de rádio, sem limitar a invenção a esta. O terminal descrito compreende uma antena 800, a qual é usada para transmitir e receber os sinais através de um filtro duplex. O terminal pode também compreender várias antenas ou sistema de múltiplas antenas. O terminal também pode compreender um transmissor 802 o qual amplifica e transmite para a antena o sinal modulado, o modulador 804 o qual modula de acordo com o método de modulação selecionado a portadora com o sinal de dados contendo a informação desejada, o receptor 806 o qual amplifica o sinal entrante da antena e converte-para baixo este para uma freqüência intermediária desejada ou diretamente para a banda base, o demodulador 808 o qual demodula o sinal recebido assim que o sinal de dados pode ser separado da portadora. O terminal do assinante também possui o bloco de controle 816 o qual controla a operação de partes diferentes do terminal, tal como a câmera 820 e o codec de vídeo 822, e toma a ação necessária para processar a voz do usuário ou os dados gerados pelo usuário, tal como o processamento de sinal digital (PSD), convertendo de digital para analógico e filtrando. Em adição, nos sistemas de espectro de dispersão, tal como o WCDMA, o espectro de sinal é disperso por meio de um código de dispersão pseudo-randômico no transmissor para a banda base e dês-propagado no receptor, esforçando assim para aumentar a capacidade do canal. O bloco de controle também executa ambas a codificação e decodificação, tal como canal e codificação de canal. Em adição, o bloco de controle adapta o sinal sendo transmitido e sinaliza a informação para associar a interface aérea padrão do sistema de rádio usado. O terminal do assinante compreende uma ou mais memórias de diferentes tipos, as quais podem ser partes de outros blocos ou separadas (não apresentado). No exemplo da Figura 8, o bloco de controle também contém um programa que controla a operação do terminal. No exemplo da figura, o codec de vídeo 822 o qual codifica e decodifica os dados de reconstrução do quadro é separado, mas este também pode ser uma parte do bloco de controle 816.
Ao transmitir os quadros, a câmera 820 registra a imagem digital no bloco da memória 818. A câmera 820 pode também registrar a imagem diretamente no codec 822. O codec codifica o quadro selecionado por meio de um dos métodos acima ou pela combinação de vários métodos. A câmera 820, o codec 822 e a memória 818 podem residir no terminal do assinante 824 ou pertence a uma unidade de câmera separada 826, neste caso a unidade da câmera 826 é conectada ao terminal do assinante 824 com a interface 828. O usuário do terminal do assinante pode quando necessário visualizar o quadro no visor 814. Os dados de reconstrução do quadro decodificado são transmitidos da mesma maneira como voz ou dados de textos para o sistema de telecomunicação e transmitido para outro telefone, por exemplo.
Os blocos operacionais do terminal descrito acima, tal como o bloco de controle e o bloco do codec 822 requerido para a codificação do quadro e decodificação, podem ser implementados de várias formas, por exemplo, por programa executado no processador ou por hardware, tal como a construção lógica dos componentes separados ou ASIC (circuito integrado de aplicação específica). As fimções do terminal apresentadas na figura podem também ser combinadas em blocos operacionais de várias formas diferindo da figura, o bloco do codec 822 pode, por exemplo, ser dividido em um codificador e um decodificador. A interface do usuário do terminal compreende um alto-falante ou um fone de ouvido 810, um microfone 812, um visor 814 e possivelmente um teclado, os quais todos são conectados ao bloco de controle 816.
Mesmo a invenção tendo sido explicada acima com referência aos exemplos e, de acordo com os desenhos apensos é óbvio que a invenção não está restrita a estes, mas pode ser modificada de várias formas dentro do escopo do conceito inventivo descrito nas reivindicações apensas. A invenção pode ser aplicada junto com vários padrões de codificação de vídeo, tal como ο H.263 ou o MPEG.
REIVINDICAÇÕES

Claims (30)

1. Método para codificar os quadros de vídeo em um sistema de telecomunicações, compreendendo as etapas de: - formar um quadro de vídeo dos quadros estacionários consecutivos; - armazenar os dados de reconstrução do quadro de uma pluralidade de quadros como quadros de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - predizer os dados de movimento de um bloco de quadro a ser codificado; e - selecionar para uso os dados de reconstrução do quadro e os dados de movimento representando o bloco a ser codificado, os quais proveem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida, sendo o método CARACTERIZADO pelo fato de que a etapa de predizer os dados de movimento de um bloco de quadro a ser codificado usa apenas os blocos vizinhos que possuem o mesmo quadro de referência que foi usado na codificação dos dados de reconstrução do quadro do bloco a ser codificado.
2. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que os quadros de referência são armazenados como blocos.
3. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que os quadros de referência são armazenados como quadros.
4. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o bloco sendo codificado é codificado por meio de apenas um bloco vizinho, se apenas um bloco vizinho for inter-codificado e este bloco vizinho possuía o mesmo quadro de referência do bloco sendo codificado.
5. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que os dados de reconstrução do quadro compreendem ao menos um dos a seguir: a informação indicando a luminância, a cor, a localização e o quadro de erro de predição do bloco de quadro.
6. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o movimento do bloco do quadro é indicado por meio dos vetores de movimento.
7. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que os blocos vizinhos codificados anteriormente são os blocos vizinhos imediatos do bloco de quadro sendo codificado.
8. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que os blocos vizinhos codificados anteriormente não estão na proximidade imediata do bloco de quadro sendo codificado, mas bem distante no quadro formado pelos blocos de quadro.
9. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o quadro do erro de predição é obtido através da comparação do bloco do quadro sendo codificado e do quadro de referência.
10. Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a eficiência de codificação é estimada por meio da função de Langrangian.
11. Terminal do assinante compreendendo: - dispositivo para formar um quadro de vídeo dos quadros estacionários consecutivos; - dispositivo para armazenar os dados de reconstrução do quadro de uma pluralidade de quadros como quadros de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - dispositivo para predizer os dados de movimento do bloco de quadro a ser codificado; e - dispositivo para selecionar para uso os dados de reconstrução do quadro e os dados de movimento, os quais proveem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida, sendo o terminal CARACTERIZADO pelo fato de que o dispositivo para predizer os dados de movimento do bloco de quadro a ser codificado usa apenas os blocos vizinhos que possuem o mesmo quadro de referência usado para codificar os dados de reconstrução do quadro do bloco a ser codificado.
12. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que os quadros de referência são armazenados como blocos.
13. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que os quadros de referência são armazenados como quadros.
14. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que o bloco sendo codificado é codificado por meio de apenas um bloco vizinho, se apenas um bloco vizinho foi inter-codificado e este bloco vizinho possuía o mesmo quadro de referência do bloco sendo codificado.
15. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que os dados de reconstrução do quadro compreendem ao menos um dos a seguir: a informação indicando a luminância, a cor, a localização e o quadro de erro de predição do bloco de quadro.
16. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que o movimento do bloco do quadro é indicado por meio dos vetores de movimento.
17. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que os blocos vizinhos codificados anteriormente são os blocos vizinhos imediatos do bloco de quadro sendo codificado.
18. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que os blocos vizinhos codificados anteriormente não estão na proximidade imediata do bloco de quadro sendo codificado, mas bem distante no quadro formado pelos blocos de quadro.
19. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que o quadro do erro de predição é obtido através da comparação do bloco do quadro sendo codificado e do quadro de referência.
20. Terminal do assinante de acordo com a reivindicação 11 CARACTERIZADO pelo fato de que a eficiência de codificação é estimada por meio da função de Langrangian.
21. Codificador de vídeo compreendendo: - dispositivo para formar um quadro de vídeo dos quadros estacionários consecutivos; - dispositivo para armazenar os dados de reconstrução do quadro de uma pluralidade de quadros como quadros de referência e os dados de movimento dos blocos vizinhos codificados anteriormente; - dispositivo para predizer os dados de movimento do bloco de quadro a ser codificado; e - dispositivo para selecionar para uso os dados de reconstrução do quadro e os dados de movimento, os quais fornecem uma eficiência de codificação pré-definida com uma qualidade de imagem pré-definida, sendo o codificador CARACTERIZADO pelo fato de que o dispositivo para predizer os dados de movimento do bloco de quadro a ser codificado usa apenas os blocos vizinhos os quais possuem o mesmo quadro de referência usado para codificar os dados de reconstrução do quadro do bloco a ser codificado;
22. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que os quadros de referência são armazenados como blocos.
23. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que os quadros de referência são armazenados como quadros.
24. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que o bloco sendo codificado é codificado por meio de apenas um bloco vizinho, se apenas um bloco vizinho inter-codificado e este bloco vizinho possuía o mesmo quadro de referência do bloco sendo codificado.
25. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que os dados de reconstrução do quadro compreendem ao menos um dos a seguir: a informação indicando a luminância, a cor, a localização e o quadro de erro de predição do bloco de quadro.
26. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que o movimento do bloco do quadro é indicado por meio dos vetores de movimento.
27. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que os blocos vizinhos codificados anteriormente são os blocos vizinhos imediatos do bloco de quadro sendo codificado.
28. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que os blocos vizinhos codificados anteriormente não estão na proximidade imediata do bloco de quadro sendo codificado, mas bem distante no quadro formado pelos blocos de quadro.
29. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que o quadro do erro de predição é obtido através da comparação do bloco do quadro sendo codificado e do quadro de referência.
30. Codificador de vídeo de acordo com a reivindicação 21 CARACTERIZADO pelo fato de que a eficiência de codificação é estimada por meio da função de Langrangian.
BRPI0017304A 2000-08-11 2000-08-11 método de codificação de quadros de vídeo, terminal do assinante, e codificador de vídeo BRPI0017304B1 (pt)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/FI2000/000686 WO2002015585A1 (en) 2000-08-11 2000-08-11 Method and apparatus for transferring video frame in telecommunication system

Publications (2)

Publication Number Publication Date
BR0017304A BR0017304A (pt) 2003-07-08
BRPI0017304B1 true BRPI0017304B1 (pt) 2016-11-29

Family

ID=8555876

Family Applications (1)

Application Number Title Priority Date Filing Date
BRPI0017304A BRPI0017304B1 (pt) 2000-08-11 2000-08-11 método de codificação de quadros de vídeo, terminal do assinante, e codificador de vídeo

Country Status (12)

Country Link
EP (1) EP1325635A1 (pt)
JP (1) JP2004534411A (pt)
KR (1) KR100828378B1 (pt)
CN (2) CN100591131C (pt)
AU (1) AU2000264472A1 (pt)
BR (1) BRPI0017304B1 (pt)
CA (1) CA2419988C (pt)
EE (1) EE05596B1 (pt)
HK (1) HK1100115A1 (pt)
HU (1) HU228614B1 (pt)
MX (1) MXPA03001270A (pt)
WO (1) WO2002015585A1 (pt)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6735249B1 (en) 1999-08-11 2004-05-11 Nokia Corporation Apparatus, and associated method, for forming a compressed motion vector field utilizing predictive motion coding
US8005145B2 (en) 2000-08-11 2011-08-23 Nokia Corporation Method and apparatus for transferring video frame in telecommunication system
BRPI0413979A (pt) 2003-08-26 2006-11-07 Thomson Licensing método e aparelho para minimizar o número de imagens de referência usadas para inter-codificação
JP2007312397A (ja) * 2007-05-25 2007-11-29 Nokia Corp 通信システムにおけるビデオフレーム転送方法と装置
JP5716438B2 (ja) * 2011-02-08 2015-05-13 株式会社Jvcケンウッド 画像復号装置、画像復号方法および画像復号プログラム
JP5716437B2 (ja) * 2011-02-08 2015-05-13 株式会社Jvcケンウッド 画像符号化装置、画像符号化方法および画像符号化プログラム

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE19509418A1 (de) 1995-03-16 1996-09-19 Thomson Brandt Gmbh Verfahren und Schaltungsanordnung zur Unterabtastung bei Bewegungsschätzung
US5682209A (en) * 1995-11-13 1997-10-28 Tektronix, Inc. Motion estimation using limited-time early exit with prequalification matrices and a predicted search center
US6128047A (en) * 1998-05-20 2000-10-03 Sony Corporation Motion estimation process and system using sparse search block-matching and integral projection
US6130912A (en) * 1998-06-09 2000-10-10 Sony Electronics, Inc. Hierarchical motion estimation process and system using block-matching and integral projection

Also Published As

Publication number Publication date
KR100828378B1 (ko) 2008-05-08
CN1933603A (zh) 2007-03-21
AU2000264472A1 (en) 2002-02-25
EE05596B1 (et) 2012-10-15
CA2419988A1 (en) 2002-02-21
EE200300053A (et) 2004-12-15
HUP0302895A3 (en) 2004-04-28
WO2002015585A1 (en) 2002-02-21
JP2004534411A (ja) 2004-11-11
HU228614B1 (en) 2013-04-29
CA2419988C (en) 2009-11-17
CN100591131C (zh) 2010-02-17
CN1454431A (zh) 2003-11-05
BR0017304A (pt) 2003-07-08
HK1100115A1 (en) 2010-06-04
EP1325635A1 (en) 2003-07-09
CN1284372C (zh) 2006-11-08
MXPA03001270A (es) 2003-06-09
KR20030027021A (ko) 2003-04-03
HUP0302895A2 (hu) 2003-12-29

Similar Documents

Publication Publication Date Title
US6782053B1 (en) Method and apparatus for transferring video frame in telecommunication system
EP1103143B1 (en) Adaptive digital video codec for wireless transmission
US8005145B2 (en) Method and apparatus for transferring video frame in telecommunication system
JP2007135219A (ja) 通信システムにおけるビデオフレーム転送方法と装置
JP2007135219A6 (ja) 通信システムにおけるビデオフレーム転送方法と装置
RU2370909C2 (ru) Способ и устройство для использования способов преобразования кадров с повышением частоты кадров при кодировании масштабируемого видео
CN111345041A (zh) 重叠块运动补偿的复杂度降低
PT1486065E (pt) Método para codificação de movimento numa sequência de vídeo
KR101201275B1 (ko) 수신기에서의 비디오 디코딩
BRPI0304545B1 (pt) Método de codificação das imagens em uma seqüência de vídeo digital para fornecer os dados de vídeo codificados, codificador de vídeo, método de decodificação dos dados indicativos de uma sequência de vídeo digital, decodificador de vídeo, e, sistema de codificação de vídeo
WO2006012384A2 (en) Method and apparatus for encoder assisted-frame rate up conversion (ea-fruc) for video compression
JP2008545297A (ja) 統一された誤り隠蔽フレームワークのための方法及び装置
CN111263192A (zh) 视频处理方法及相关设备
KR100341823B1 (ko) 유무선 영상 통신시스템에서의 비트에러확률 기준값설정방법
US20070002949A1 (en) Fast partial pixel motion estimation for video encoding
JP2002027463A (ja) 画像符号化装置及び方法
BRPI0017304B1 (pt) método de codificação de quadros de vídeo, terminal do assinante, e codificador de vídeo
BR112020024666A2 (pt) método e aparelho de obtenção de vetor de movimento
KR101538010B1 (ko) 영상 부호화 장치, 영상 부호화 방법, 영상 복호화 장치 및 영상 복호화 방법
US7079582B2 (en) Image coding apparatus and image coding method
JP2007312397A (ja) 通信システムにおけるビデオフレーム転送方法と装置
JP2006520552A (ja) ビデオデータを符号化するための方法,システム,及び,コンピュータプログラム
KR100289727B1 (ko) 영상 복원 장치 및 이를 이루기 위한 오류 은닉 방법
ZA200301088B (en) Method and apparatus for transferring video frame in telecommunication system.
CN112087638A (zh) 一种基于h.264技术的场外无线监控系统及方法

Legal Events

Date Code Title Description
B08F Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette]

Free format text: REFERENTE A 3A ANUIDADE

B15G Petition not considered as such [chapter 15.7 patent gazette]

Free format text: NAO CONHECIDA PETICAO 20080090620 DE 30/06/2008 EM VIRTUDE DO DISPOSTO NO ARTIGO 218, INCISO I, DALPI.

B08K Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette]

Free format text: REFERENTE AO DESPACHO PUBLICADO NA RPI 1942 DE 25/03/2008.

B08H Application fees: decision cancelled [chapter 8.8 patent gazette]

Free format text: REFERENTE AOS DESPACHOS PUBLICADOS NAS RPIS 1978 DE 02/12/2008, ITEM 15.7, E 1979 DE 09/12/2008, ITEM 8.11, POR TEREM SIDO INDEVIDOS.

B08G Application fees: restoration [chapter 8.7 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B06A Patent application procedure suspended [chapter 6.1 patent gazette]
B07A Application suspended after technical examination (opinion) [chapter 7.1 patent gazette]
B25A Requested transfer of rights approved

Owner name: NOKIA TECHNOLOGIES OY (FI)

B15K Others concerning applications: alteration of classification

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

Ipc: H04N 19/147 (2014.01), H04N 19/51 (2014.01), H04N

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: 10 (DEZ) ANOS CONTADOS A PARTIR DE 29/11/2016, OBSERVADAS AS CONDICOES LEGAIS.