BRPI0107706B1 - método e dispositivo para codificar uma imagem digital, codificador, decodificador, codec e terminal móvel - Google Patents
método e dispositivo para codificar uma imagem digital, codificador, decodificador, codec e terminal móvel Download PDFInfo
- Publication number
- BRPI0107706B1 BRPI0107706B1 BRPI0107706A BR0107706A BRPI0107706B1 BR PI0107706 B1 BRPI0107706 B1 BR PI0107706B1 BR PI0107706 A BRPI0107706 A BR PI0107706A BR 0107706 A BR0107706 A BR 0107706A BR PI0107706 B1 BRPI0107706 B1 BR PI0107706B1
- Authority
- BR
- Brazil
- Prior art keywords
- block
- prediction
- information
- blocks
- neighboring
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 196
- 230000008685 targeting Effects 0.000 claims description 12
- 238000013507 mapping Methods 0.000 claims description 9
- 230000000903 blocking effect Effects 0.000 claims 1
- 230000005540 biological transmission Effects 0.000 description 13
- 230000000875 corresponding effect Effects 0.000 description 13
- 230000006835 compression Effects 0.000 description 12
- 238000007906 compression Methods 0.000 description 12
- 230000001419 dependent effect Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000011664 signaling Effects 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000009466 transformation Effects 0.000 description 5
- 238000006073 displacement reaction Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 239000013598 vector Substances 0.000 description 4
- 239000010750 BS 2869 Class C2 Substances 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 238000011437 continuous method Methods 0.000 description 2
- 238000012546 transfer Methods 0.000 description 2
- 230000001174 ascending effect Effects 0.000 description 1
- 230000002457 bidirectional effect Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001276 controlling effect Effects 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 230000006837 decompression Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- VJYFKVYYMZPMAB-UHFFFAOYSA-N ethoprophos Chemical compound CCCSP(=O)(OCC)SCCC VJYFKVYYMZPMAB-UHFFFAOYSA-N 0.000 description 1
- 238000005259 measurement Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- 230000000737 periodic effect Effects 0.000 description 1
- 230000000717 retained effect Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/50—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
- H04N19/593—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
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)
- Compression Of Band Width Or Redundancy In Fax (AREA)
- Image Processing (AREA)
- Apparatus For Radiation Diagnosis (AREA)
- Closed-Circuit Television Systems (AREA)
- Reduction Or Emphasis Of Bandwidth Of Signals (AREA)
Abstract
"método e dispositivo para codificar uma imagem digital, codificador, decodificador, codec, terminal móvel, e, dispositivo de armazenagem". a invenção descreve um método para codificar uma imagem digital, na qual o método da imagem digital é dividido em blocos (c, l, u, ul, ur). no método uma predição espacial para o bloco c é executada para reduzir a quantidade de informação a ser transmitida, onde ao menos um método de predição (p1 - p13) é definido. no método, a classificação é determinada para ao menos um bloco vizinho (l, u) do bloco (c) a ser predito de acordo com os conteúdos do bloco vizinho (l, u), e o método de predição (p1-p13) é selecionado para o bloco corrente (c) com base em pelo menos uma classificação.
Description
“MÉTODO E DISPOSITIVO PARA CODIFICAR UMA IMAGEM DIGITAL, CODIFICADOR, DECODIFICADOR, CODEC E TERMINAL MÓVEL”.
Campo cia Invenção A presente invenção relaciona a um método para codificar imagens de acordo com o preâmbulo da reivindicação 1, A presente invenção também relaciona a um dispositivo para codificar irnagens de acordo com o preâmbulo da reivindicação 12. Além disso, a presente invenção relaciona a um codificador de acordo com o preâmbulo da reivindicação 23» a um decodificador de acordo com o preâmbulo da reivindicação 24, a um codec de acordo com o preâmbulo da reivindicação 23, a um terminal móvel de acordo com o preâmbulo da reivindicação 26» e a um dísposílívo de armazenagem para armazenar um programa de software de acordo com o preâmbulo da reivindicação 27, A imagem pode ser qualquer imagem digital, uma imagem de vídeo, uma imagem de TV, uma imagem gerada por um gravador de vídeo, uma animação de computador, uma imagem imóvel, etc. em geral, uma imagem digital consiste em pixels, estes são dispostos em linhas horizontais e verticais, o numero dos quais em uma única imagem é tipicamente de dez milhões. Em adição, a informação gerada para cada pixel contém, por exemplo, a informação de luminância relativa ao pixel, tipicamente com uma resolução de oito bits, e nas aplicações coloridas há também a informação de crominância, por exemplo, um sinal de crominância. Este sinal de crominância geral mente consiste de dois componentes» Cb e Cr que são ambos tipicamente transmitidos com uma resolução de oito bits, Com base nestes valores de luminância e crominância, é possível formar a informação que corresponde ao pixel original no dispositivo de exibição de um terminal de vídeo de recepção. Neste exemplo, a quantidade de dados a ser transmitida para cada pixel é de 24 bits não compactados. Assim, o total de informação para uma imagem chega a vários megabits. Na transmissão de uma imagem em movimento, várias imagens são transmitidas por segundo. Por exemplo, em uma imagem de TV, são transmitidas 25 imagens por segundo. Sem compressão, a quantidade de informação a ser transmitida chegaria a dezenas de megabits por segundo, Porém, por exemplo, na rede de dados Internet, a taxa de transmissão de dados pode estar na ordem de 64 kbiís por segundo, o que toma a transmissão da imagem não compactada em tempo real por esta rede praticamente impossível.
Para reduzir a quantidade de informação a ser transmitida, foram desenvolvidos vários métodos de compressão diferentes, tal como o JPEG, o MPEG e os padrões H.263. Na transmissão de vídeo, a imagem de compressão pode ser executada ou como compressão inter-quadro, compressão intra-quadro, ou uma combinação destas. Na compressão de inter-quadro, o alvo é eliminar a informação redundante nos quadros das imagens sucessivas. Tipicamente, as imagens contêm uma grande quantidade de informação não-variada, por exemplo, um fundo imóvel, ou uma informação variável lentamente, por exemplo, quando o sujeito move lentamente. Na compressão inter-quadro, é também possível utilizar a predição de movimento compensado, onde o alvo é detectar os elementos na imagem que estão em movimento, onde o vetor de movimento e as informações de erro de predição são transmitidos em vez de transmitir os valores de pixel.
Para habilitar o uso de técnicas de compressão de imagem em tempo real, o terminal de vídeo de transmissão e de recepção deveria ter uma velocidade de processo suficientemente alta, para que seja possível executar a compressão e a descompressão em tempo real.
Em várias técnicas de compressão de imagem, um sinal de imagem em formato digital é sujeitado a uma transformação de co-seno discreto (DCT), antes do sinal de imagem ser transmitido para um caminho de transmissão ou armazenado em um dispositivo de armazenagem. Usando um DCT, é possível calcular o espectro de ffeqüência de um sinal periódico, isto é, executar uma transformação no domínio do tempo para o domínio da freqüência. Neste contexto, a palavra discreto indica que os pixels separados em vez das funções contínuas são processados na transformação. Em um sinal de imagem digital, os pixels vizinhos têm tipicamente uma correlação espacial significativa. Uma característica do DCT é que os coeficientes estabelecidos como resultado do DCT são praticamente não correlacionados; conseqüentemente, o DCT administra a transformação do sinal de imagem no domínio do tempo para o domínio de freqüência (espacial) de uma maneira eficiente, reduzindo a redundância dos dados de imagem. Como tal, o uso da codificação de transformação é um modo efetivo de reduzir a redundância em ambas as codificações inter-quadro e intra-quadro.
Os métodos de codificação baseados nos blocos correntes usados na codificação da imagem imóvel e na codificação de vídeo para os quadros chaveados codificados independentemente (intra-quadros) usam uma aproximação baseada em bloco. Em geral, uma imagem é dividida nos blocos NxM que são codificados independentemente, usando algum tipo de codificação de transformação. A codificação pura baseada no bloco, reduz apenas a correlação inter-pixel dentro de um bloco particular, sem considerar a correlação inter-bloco dos pixels. Então, a codificação simples baseada no bloco, produz altas taxas de bits até mesmo ao usar a codificação baseada na transformação, tal como a codificação DCT que tem propriedades de empacotamento de energia muito eficiente para os dados altamente correlacionados. Então, os padrões de codificação da imagem digital corrente exploram certos métodos que também reduzem a correlação dos valores de pixel entre os blocos.
Os métodos de codificação da imagem digital corrente executa a predição dentro do domínio de transformação, isto é, eles tentam predizer os coeficientes DCT do bloco correntemente sendo codificado usando os blocos codificados prévios e são então acoplados ao método de compressão. Tipicamente, um coeficiente DCT que corresponde ao valor de pixel comum dentro de um bloco de imagem é predito, usando o mesmo coeficiente DCT do bloco codificado prévio. A diferença entre o coeficiente atual e predito é enviado ao decodificador. Porém, este esquema pode predizer apenas o valor do pixel comum, e não é muito eficiente.
Os coeficientes de predição DCT podem ser executados usando os blocos vizinhos espacialmente. Por exemplo, o coeficiente DCT que corresponde ao valor de pixel comum dentro de um bloco é predito, usando o coeficiente(s) (DCT) de um bloco à esquerda ou sobre o bloco codificado corrente sendo codificado. Os coeficientes DCT que correspondem às freqüências horizontais (isto é, as extremidades verticais) podem ser preditos do bloco acima do bloco corrente e os coeficientes que correspondem às freqüências verticais (isto é, as extremidades horizontais) podem ser preditos do bloco situado à esquerda. Semelhante ao método prévio, as diferenças entre os coeficientes atual e o predito são codificadas e enviadas ao decodificador. Esta aproximação permite a predição das extremidades horizontais e verticais que rodam através de vários blocos.
Na compressão MPEG-2, o DCT é executado nos blocos usando um tamanho de bloco de 8x8 pixels. O nível de luminância é transformado usando a resolução espacial total, enquanto ambos os sinais de crominância são sub-amostrados. Por exemplo, um campo de 16x16 pixels é sub-amostrado em um campo de 8x8 pixels. As diferenças no tamanhos dos blocos são, principalmente devido ao fato de que o olho não discerne as mudanças na crominância tão igualmente bem como as mudanças na luminância, onde o campo de 2x2 pixels é codificado com o mesmo valor de crominância. O padrão MPEG-2 define três tipos de quadros: o quadro-I (Intra), o quadro-P (Predito), e o quadro-B (Bidirecional). O quadro-I é gerado somente com base na informação contida na própria imagem, onde na extremidade de recepção, uma quadro-I pode ser usado para formar a imagem inteira. O quadro-P é formado tipicamente com base no quadro-I ou quadro-P precedente mais próximo, onde na fase receptora o quadro-I ou quadro-P precedente é correspondentemente usado junto com o quadro-P recebido. Por exemplo, na composição dos quadros-P, a compensação de movimento é usada para comprimir a quantidade de informação. Os quadros-B são formados com base no quadro-I precedente e, um quadro seguinte P ou I. Correspondentemente, na fase receptora não é possível compor o quadro-B, até que os quadros precedentes e seguintes tenham sido recebidos. Além disso, na fase de transmissão a ordem dos quadros-P e B são alteradas, onde o quadro-P a seguir o quadro-B-quadro são recebidos primeiro. Isto tende a apressar a reconstrução da imagem no receptor.
Os esquemas de codificação intra-quadro usado nas soluções da técnica anterior é ineficiente, onde a transmissão dos quadros intra-codificados é uma largura de banda-excessiva. Isto limita o uso dos quadros chave codificados independentemente nas aplicações de codificação de imagem digital a uma baixa taxa de bits. A presente invenção endereça o problema de como também reduzir a informação redundante nos dados de imagem e produzir uma codificação mais eficiente dos dados de imagem, introduzindo um esquema de predição espacial que envolve a predição dos valores de pixel, que oferecem uma possibilidade para predição de várias direções. Isto permite uma predição eficiente das extremidades com orientações diferentes, resultando em armazenagens na taxa de bits. O método de acordo com a invenção, também usa a seleção contexto-dependente dos métodos de predição adequados, os quais provêem outras armazenagens na taxa de bits. A invenção introduz um método para executar uma predição espacial dos valores de pixel dentro de uma imagem. A descrição técnica deste documento introduz um método e um sistema para a predição espacial, que pode ser usada para a codificação de imagem imóvel baseada em bloco e para a codificação intra-quadro nos codificadores de vídeo baseados em bloco. Os elementos fundamentais da invenção são o uso dos métodos de predição múltiplos e a seleção contexto-dependente e a sinalização do método de predição selecionado. O uso dos métodos de predição múltiplos e a seleção contexto-dependente e a sinalização dos métodos de predição permitem armazenagens significativas em uma taxa de bits a ser alcançada comparada com as soluções da técnica anterior. É um objeto da presente invenção melhorar a codificação e a decodificação das imagens digitais, tal que a eficiência da codificação mais alta pode ser alcançada e, a taxa de bits da imagem digital codificada também pode ser reduzida.
De acordo com a presente invenção, este objeto é alcançado por um codificador para executar a codificação predita espacialmente dos dados de imagem.
De acordo com o primeiro aspecto da invenção é provido um método para codificar uma imagem digital, onde a imagem digital é dividida em blocos, o método é caracterizado pelo fato de que uma predição espacial para o bloco é executada para reduzir a quantidade de informação a ser transmitida, onde pelo menos um método de predição é definido, uma classificação é determinada para pelo menos um bloco vizinho do bloco a ser predito de acordo com os conteúdos do bloco vizinho, e um método de predição é selecionado para o bloco atual com base em pelo menos uma classificação.
De acordo com o segundo aspecto da invenção é provido um dispositivo para codificar uma imagem digital que é dividida em blocos, o dispositivo é caracterizado pelo fato de que compreende um dispositivo para executar a predição espacial para um bloco, para reduzir a quantidade de informação a ser transmitida, onde pelo menos um método de predição é definido, o dispositivo inclui também um dispositivo para determinar uma classificação para pelo menos um bloco vizinho do bloco a ser predito de acordo com os conteúdos do bloco vizinho, e dispositivo para selecionar um método de predição para o bloco atual com base em pelo menos uma classificação.
De acordo com o terceiro aspecto da invenção é provido um codificador que inclui um dispositivo para codificar uma imagem digital, e um dispositivo para dividir a imagem digital em blocos, o codificador é caracterizado pelo fato de que compreende um dispositivo para executar a predição espacial para um bloco, para reduzir a quantidade de informação a ser transmitida, onde pelo menos um método de predição é definido, o codificador também compreende um dispositivo para determinar uma classificação para pelo menos um bloco vizinho do bloco a ser predito de acordo com os conteúdos do bloco vizinho, e dispositivo para selecionar um método de predição para o bloco atual com base em pelo menos uma classificação.
De acordo com o quarto aspecto da invenção é provido um decodificador que compreende um dispositivo para decodificar uma imagem digital que é dividida em blocos, o decodificador é caracterizado pelo fato de que compreende um dispositivo para executar a predição espacial para um bloco, para reduzir a quantidade de informação a ser transmitida, onde pelo menos um método de predição é definido, o decodificador também compreende um dispositivo para determinar uma classificação para pelo menos um bloco vizinho do bloco a ser predito de acordo com os conteúdos do bloco vizinho, e dispositivo para selecionar um método de predição para o bloco atual com base em pelo menos uma classificação.
De acordo com o quinto aspecto da invenção é provido um codec que compreende um dispositivo para codificar uma imagem digital, um dispositivo para dividir a imagem digital em blocos, e um dispositivo para decodificar uma imagem digital, o codec é caracterizado pelo fato de que compreende um dispositivo para executar a predição espacial para um bloco, para reduzir a quantidade de informação a ser transmitida, onde pelo menos um método de predição é definido, o codec também compreende um dispositivo para determinar uma classificação para pelo menos um bloco vizinho do bloco dito a ser predito de acordo com os conteúdos do bloco vizinho, e um dispositivo para selecionar um método de predição para o bloco atual com base em pelo menos uma classificação.
De acordo com o sexto aspecto da invenção é provido um terminal móvel que compreende um dispositivo para codificar uma imagem digital, um dispositivo para dividir a imagem digital em blocos, e um dispositivo para decodificar uma imagem digital, o terminal é caracterizado pelo fato de que compreende um dispositivo para executar a predição espacial para um bloco, para reduzir a quantidade de informação a ser transmitida, onde pelo menos um método de predição é definido, o terminal móvel também compreende um dispositivo para determinar uma classificação para pelo menos um bloco vizinho do bloco a ser predito de acordo com os conteúdos do bloco vizinho, e um dispositivo para selecionar um método de predição para o bloco atual com base em pelo menos uma classificação.
De acordo com o sétimo aspecto da invenção é provido um dispositivo de armazenamento para armazenar um programa de computador que compreende uma máquina para executar os passos de codificar uma imagem digital, e de dividir a imagem digital em blocos, o dispositivo é caracterizado pelo fato de que compreende os passos de executar a predição espacial para um bloco, para reduzir a quantidade de informação a ser transmitida, onde pelo menos um método de predição é definido, os passos para determinar uma classificação para pelo menos um bloco vizinho do bloco a ser predito de acordo com os conteúdos do bloco vizinho, e os passos para selecionar um método de predição para o bloco atual com base em pelo menos uma classificação. A invenção é baseada na idéia de que para executar a predição espacial dos valores de pixel para um bloco a ser codificado, os blocos decodificados adjacentes são examinados, para determinar se existe algum direcionamento nos conteúdos dos blocos adjacentes. Esta informação de direcionamento é usada então para classificar os blocos. Baseado na combinação das classes dos blocos adjacentes, os conteúdos (valor do pixel) do bloco atual são então preditos usando um método de predição satisfatório. O método de predição é sinalizado para o decodificador. A informação de erro de predição também é enviada se esta for eficiente fazer isso em uma distorção versus a detecção da taxa de bits.
Vantagens consideráveis são alcançadas com a presente invenção, quando comparado com soluções da técnica anterior. Usando o método de acordo com a invenção, é possível reduzir a quantidade de informação necessária ao transmitir as imagens em formato digital.
Em geral, o método de acordo com a invenção ainda pode ser aplicado para a codificação de imagem móvel baseado em bloco como também para a codificação intra-quadro em um codificador de imagem digital baseado em bloco.
Breve Descrição das Figuras A seguir, a invenção será descrita em maiores detalhes com referência aos desenhos apensos, os quais: Figura 1 - apresenta a estrutura do sistema de transmissão de imagem digital;
Figura 2 - ilustra o método de predição espacial da presente invenção na forma de um diagrama de blocos;
Figuras 3a—3c — apresenta uma ilustração dos blocos que são usados para a predição de acordo com uma incorporação vantajosa da presente invenção;
Figura 4 - apresenta o mapeamento de direcionamento das classes para as classes de contexto de acordo com uma incorporação vantajosa da presente invenção;
Figuras 5a—5p - apresentam uma ilustração dos pixels que são usados para a predição de acordo com uma incorporação vantajosa da presente invenção;
Figura 6 - apresenta uma sintaxe vantajosa do fluxo de bits usado na transmissão da informação de deslocamento,e;
Figura 7 - é uma representação esquemática de um dispositivo de comunicação portátil implementando o método de acordo com a invenção.
Descrição Detalhada da Invenção O método de predição intra-quadro que é descrito nesta invenção, opera de uma maneira baseada em bloco e pode ser aplicado aos quadros de imagem que incluem os blocos NxM varridos, por exemplo, linha a linha, da esquerda para a direita e de cima para baixo. É óbvio que outras direções de escaneamento podem ser usadas em conexão com a presente invenção. A predição espacial é executada para cada bloco intra-codificado que usa os blocos previamente reconstruídos no mesmo quadro. O erro residual pode ser compactado, usando qualquer método adequado, por exemplo, usando DCT, como nos padrões atuais. Deveria ser apreciado que o método de acordo com a invenção pode ser aplicado igualmente bem a ambas as imagens, monocromática e colorida. O sistema de acordo com a invenção consiste em duas partes principais, tal como ilustrado na Figura 2. Primeiramente, seleção 17 contexto-dependente de um subconjunto satisfatório de métodos de predição é executada classificando os blocos reconstruídos vizinhos. Secundariamente, um bloco de predição é construído 18 usando um dos métodos de predição no subconjunto selecionado e o método de predição é sinalizado para o decodificador. A seleção contexto-dependente de um subconjunto do método de predição inclui a classificação de direcionamento de possíveis blocos vizinhos, o mapeando de direcionamento das classes para a classe de contexto e a seleção contexto-dependente de um subconjunto do método de predição apropriado. A seguir, a transmissão e a recepção dos quadros de imagem digital em um sistema de transmissão são descritos com referência ao dispositivo de transferência de imagem digital apresentado na Figura 1. O quadro atual chega no sistema de transmissão 1 como dados de entrada 2 fornecidos, por exemplo, como a saída de uma câmera de vídeo digital. O quadro atual pode ser provido em sua totalidade (isto é, um quadro completo que inclui blocos de imagem NxM), onde o quadro é armazenado, ou o sistema de transmissão 1 pode receber os blocos de entrada de dados através do bloco. Os blocos do quadro são direcionados um por um ao somador 4, onde erro de predição de um bloco é calculado, por exemplo, subtraindo um bloco do quadro de um bloco predito. O erro de predição é codificado em um codificador 5 e decodificado em um decodificador 6. No somador 7 o erro de predição decodificado é somado com os blocos preditos e o resultado é armazenado na memória 8 do quadro. O estimador 3 de predição, onde a predição espacial é executada de acordo com o método da invenção, recebe os blocos a serem usados com a predição da memória 8 do quadro.
Para formar um bloco de predição novo, o estimador 3 de predição examina, se existe algum direcionamento nos possíveis blocos vizinhos do bloco atual. Este esquema é ilustrado na Figura 3a. A referência C denota o bloco atual, a referência L denota o primeiro bloco vizinho do bloco atual e a referência U denota o segundo bloco vizinho do bloco atual. Nesta incorporação vantajosa da invenção, o primeiro bloco vizinho está à esquerda do bloco atual Ceo segundo bloco vizinho está acima do bloco atual C. Se a ordem de escaneamento for diferente da esquerda para a direita e de cima para baixo, o primeiro bloco vizinho L e o segundo bloco vizinho U respectivamente não são necessariamente à esquerda de e acima do bloco atual C. Os blocos vizinhos L, U são blocos adjacentes para o bloco atual C que já foi reconstruído. Em algumas incorporações da invenção mais de dois blocos que podem ser classificados e usados para selecionar o método de predição para o bloco atual C. Porém, na descrição a seguir de uma incorporação preferida da invenção, um máximo de dois blocos vizinhos L, U são classificados para cada bloco C sob exame. Além disso, a classificação só é executada se um bloco vizinho L ou U existir. Se um bloco atual não tem qualquer bloco vizinho, é tratado como “Não-Intra” durante a seleção contexto-dependente dos métodos de predição, como será explicado mais adiante no texto. A predição também pode ser implementada de tal modo que esta seja apenas executada usando os blocos intra-codificados reconstruídos. Neste caso, todos os blocos intra-codificados diferente são tratados como blocos “Não-Intra”. O primeiro bloco vizinho L e o segundo bloco vizinho U são classificados de acordo com os detalhes de direcionamento dos detalhes da imagem dentro do bloco. Como ilustrado na Figura 2, o classificador de direcionamento 19 analisa o direcionamento do bloco vizinho usando os gradientes do valor de pixel. Como resultado, cada bloco vizinho é mapeado 20 em uma classe de saída. Em uma incorporação vantajosa da invenção existem 11 classes de saída, mas é óbvio que o número de classes de saída pode variar. Vantajosamente, as classes de saída consistem em 8 classes de direcionamento DO - D7 que corresponde as orientações delimitadas ko 22.5°, k = 0, 1,..., 7 e 3 classes não-direcionais D8 - D10 que correspondem aos blocos planos, de textura fma e de textura grossa. Nas incorporações alternativas da invenção, o número de classes de direcionamento e o modo nos quais eles são definidos pode variar.
No sistema da figura 1, o estimador 3 de predição examina primeiro se o primeiro bloco vizinho L e/ou o segundo bloco vizinho U existem. Se qualquer um dos dois destes blocos não existir, o bloco vizinho é definido como um bloco CO (Não-Intra), isto é o bloco atual C está na extremidade ou em um canto do quadro, ou na extremidade ou em um canto de uma área que consiste nos blocos Intra. Então, o estimador 3 de predição seleciona um método de predição satisfatório para o bloco atual C, como descrito depois nesta descrição. Caso contrário, o estimador 3 de predição calcula a informação gradiente relativa ao bloco ou as blocos L, U.
Existem muitos métodos adequados para calcular a informação gradiente. A seguir, é descrito um método vantajoso. Primeiro, os gradientes direcionais absolutos comuns gk, k = 0, 1,..., 7 de um bloco L, U são definidos como: onde N é o tamanho do bloco e I(x,y) representa os valores de intensidade de pixel. Os índices x e y referem-se às co-ordenadas de um pixel dentro do bloco e k representa as orientações delimitativas. O estimador 3 de predição calcula o valor gradiente gk de acordo com a fórmula acima.
Usando os valores gradientes gk, a relação do gradiente rk, k= 0, 1, ...,7 são definidos como a relação entre o valor gradiente em uma direção determinada e o valor gradiente em uma direção ortogonal: (2) Baseado nos valores do gradiente absoluto gk e das relações do gradiente rk definidos em (1) e (2), a classificação do bloco é executada vantajosamente de acordo com a classificação a seguir nos passos 1-12 usando alguns valores numéricos como limiares. Este processo de classificação classifica cada um dos blocos vizinhos em um de um primeiro grupo de tipos bloco D0-D10. A presente invenção não é limitada aos valores usados no algoritmo, mas os valores usados no algoritmo nos passos seguintes é preferido. O método também pode ser aplicado a qualquer tamanho de bloco.
Nesta incorporação vantajosa da invenção, a fase de classificação inclui 13 passos, mas é óbvio que a classificação também pode incluir um número diferente de passos.
Passo 1 Neste passo o nivelamento do bloco é verificado. O estimador 3 de predição calcula o valor gradiente go e g4. Estes correspondem aos valores de gradiente para os detalhes de imagem horizontal (0o) e vertical (90°). Se ambos o go < 2.0 e g4 < 2.0, o bloco é classificado como classe D8 e o processo de classificação inicial termina. Caso contrário, a classificação no passo 2 é executada.
Passo 2 Neste passo uma outra verificação para o nivelamento do bloco é executada. O resto dos valores gradientes gk são calculados, e o valor máximo gradiente gmax = maxjgk} é determinado. O valor máximo gradiente gmax é comparado com 2.5. Se gmax < 2.5, o bloco é classificado como classe D8 e o processo de classificação inicial termina. Caso contrário, o método continua no passo 3.
Passo 3 No passo 3 uma verificação para um direcionamento clara é executada. As relações de gradiente rk são calculadas e a relação de gradiente mínimo rmin = min{rk} é determinado. Quando a relação de gradiente mínima é encontrada, o índice kmjn correspondente é definido. Se rmin ^ 0.15, o bloco é classificado a classe correspondente Dkmin e o método continua no passo 12, caso contrário o método continua no passo 4.
Passo 4 No passo 4 uma verificação para textura é executada. A relação de gradiente mínimo rmjn é comparado com 0.6. Se rmin > 0.6, o método continua no passo 13, caso contrário o método continua no próximo passo.
Passo 5 No passo 5 as duas relações de gradiente menores são conferidas para determinar se elas são claramente distintas. As relações de gradiente rk são ordenadas em ordem crescente qo)< rp)< rp)< ...< r(7). Os índices da relação de gradiente também são reordenados de acordo com a ordem ordenado k(0), kp), kp),... kp). Se qp< qo)<l/3 (γ(2)-Γ(ι)) o sexto passo de classificação é executado logo, caso contrário o método continua no 10° passo de classificação.
Passo 6 No passo 6 a relação de gradiente menor é conferida para determinar se corresponde a classe de direcionamento D2 ou D6 e a relação de gradiente menor é bastante pequena. O estimador 3 de predição examina primeiro, se o índice da relação de gradiente r(0) é ou 2 ou 6, onde a primeira relação de gradiente qo) é comparada com 0.6. Se qo) s{rk | k=2,6} e r(0)<0.6, o bloco é classificado como a classe correspondente Dk(0) e o método continua no passo 12. Caso contrário o método continua no passo 7.
Passo 7 No passo 7 o estimador 3 de predição examina primeiro se o índice da segunda relação de gradiente rp) é 2 ou 6, onde a primeira relação de gradiente qo) é comparada com 0.6. See qo) a{rk | k=2,6) e r(0) <0.6 o bloco é classificado como a classe correspondente Dk(l) e o método continua no passo 12, caso contrário o método continua no Passo 8.
Passo 8 No passo 8 a relação de gradiente menor é conferida para determinar se esta corresponde a classe de direcionamento Dl, D3, D5 ou D7 e a relação de gradiente menor é bastante pequena. A primeira relação de gradiente qo) é comparada com 0.5. Se qo) s{rk | k=l,3,5,7} e r(0) <0.5, o bloco é classificado como a classe correspondente Dk(0) e o método continua no passo 12, caso contrário o método continua no passo 9.
Passo 9 No passo 9 a segunda relação de gradiente é conferida para determinar se esta corresponde a classe de direcionamento Dl, D3, D5 ou D7 e a relação de gradiente menor é bastante pequena. A primeira relação de gradiente qo) é comparada com 0.5, se r(0) s{rk | k=l,3,5,7}. Se r(0) <0.5, o bloco é classificado como a classe correspondente Dk(l) e o método continua no passo 12. Caso contrário, o método continua no passo 10.
Passo 10 O direcionamento ainda não foi encontrada, então um valor de limiar superior (levemente) comparado com o valor usado no Passo 3 pode ser usado para verificar o direcionamento. Isto significa que um exame mais incerto é executado. O Passo 10 usa os valores de limiar Ti definido na Tabela 1, abaixo. Os valores para Ti são comparados com a primeira relação de gradiente. Se r(0) <Ti como definido na tabela 1, o bloco é classificado como a classe correspondente Dk(0) e o método contínua no passo 12. Caso contrário, o método contínua no passo 11.
Tabela 1 Passo 11 O direcionamento ainda não foi encontrada, então no passo 11 as três relações de gradiente menores são conferidas para determinar se elas são vizinhas e se a relação de gradiente menor está no meio. Neste caso um valor limiar mais alto ainda comparado com o valor de limiar usado no Passo 3 pode ser usado para conferir o direcionamento. Isto significa que um exame mais incerto é executado. O Passo 11 usa os valores de limiar T2 definido abaixo na Tabela 2. Então, se os direcionamentos correspondem a segunda r(i) e a terceira r(2) relações de gradiente, estas são vizinhos próximos para a direcionamento que corresponde a primeira qo) relação de gradiente e qo) <T2 como definido na Tabela 2, o bloco é classificado como a classe correspondente Dk(0) e 0 método continua no passo 12. Caso contrário o método continua no passo 13.
Tabela 2 Passo 12 O Passo 12 executa uma verificação onde a classificação é realmente baseada em uma extremidade na imagem com uma certa orientação em lugar de textura. O Passo 12 usa os valores de limiar T3 definido na Tabela 3, abaixo. Na Tabela 3 os valores para apenas dois possíveis tamanhos de bloco (8x8, 4x4) são mostrados, mas nas incorporações práticas outro bloco de tamanhos também pode existir, onde valores respectivos para T3 são definidos. No passo 12 o de valor de gradiente mínimo gmjn = min{gk} é examinado. Dependendo da classificação e do tamanho do bloco, 0 limiar T3 é escolhido na Tabela 3. Se gmin < T3 o processo de classificação inicial termina. Caso contrário, o método continua no passo 13.
Tabela 3 Passo 13 O Passo 13 executa uma verificação se a textura for fina ou grossa. O valor máximo do gradiente gmaxé comparado com 10.0. Se gmax ^ 10.0, o bloco é classificado como D9. Caso contrário, o bloco é classificado como D10. O Passo 13 não é necessariamente necessário, se ambas as texturas fina e grossa são mapeadas na mesma classe de contexto. A seguir a seleção 21 de um método de predição adequado é executado para 0 bloco atual C. Em uma incorporação preferida da invenção, a fase de seleção é precedida por uma fase de mapeamento. O propósito do mapeamento é reduzir o consumo de memória da implementação. Algumas das classes de direcionamento podem ser mapeadas junto. As classes resultantes da fase de mapeamento são denominadas de classes de contexto e elas são referenciadas com as referências Cl - C6. Na incorporação preferida da invenção, as classes diagonais são combinadas à duas classes alternativas, uma para a diagonal inferior-esquerda para superior-direita e a outra para a diagonal superior-esquerda para inferior-direita.
As classes diagonais moderada e íngreme D5, D6 e D7são mapeadas para a primeira classe de contexto diagonal C4. Semelhantemente, as classes Dl, D2 e D3 são mapeadas para a segunda classe de contexto diagonal C2. Mais adiante, a classe de textura lisa D9 e classe de textura grossa D10 são mapeadas junto para produzir a classe de contexto de textura C6. Este mapeamento é ilustrado na Figura 4.
Em adição, as classes de contexto C1-C6 6 tem uma classe de contexto adicional CO usada para os blocos “Não-Intra”. Em geral, o bloco “Não-Intra” é um bloco que não existe, isto é quando o bloco C está a um limite de imagem. Se a predição é implementada, de tal modo que apenas os blocos intra-codifícados sejam usados como referência, a definição de um bloco “Não-Intra” é estendida a esses blocos que não são intra-codificados.
Na incorporação preferida da invenção, existem um total de 13 métodos de predição diferentes que são descritos nas Fimiras os blocos 8xS. Os .hCvwuwj predição para outros tamanhos de bloco e para classes de contexto podem ser derivados de uma mesma maneira. Em cada caso, a predição é executada de uma maneira causai, usando os blocos vizinhos intra-codificados reconstruídos L, U, UL, UR como referência. A região usada para a predição depende do método de predição, como descrito nas Figuras 3a e 3b, onde o bloco C é o bloco atual a ser codificado. No caso dos métodos de predição PI-PI 2, a região da qual os blocos podem ser usados para predição é a área coberta por quatro blocos vizinhos L, UL, U e R como mostrado na Figura 3b. Para o método de predição PI3, esta região é maior, como descrito na Figura 3c. Deveria ser apreciado que em outras incorporações da invenção, o número de métodos de predição, os blocos usados como referências de predição, como também o pixels dentro destes blocos usados para executar a predição, pode variar.
Em uma incorporação vantajosa do método de acordo com a invenção, um subconjunto de métodos de predição para cada combinação de classe de contexto é definido e os métodos de predição são priorizados (enfíleirados) em cada subconjunto. Então, o método de predição usado para predizer o conteúdo do bloco atual C é selecionado de um subconjunto de métodos de predição. Os métodos de predição dentro de um subconjunto diferem um do outro e correspondem a esses métodos de predição, que são prováveis para prover uma predição precisa para o bloco C, no caso de classificações particulares que são obtidas para blocos vizinhos, tal como L e U. Uma definição vantajosa para os subconjuntos é apresentada na Tabela 4 abaixo.
Efetivamente, os resultados da classificação de contexto para o primeiro bloco vizinho L e para o segundo bloco vizinho U são combinados, isto é, ambos levam em consideração ao selecionar um método de predição para o bloco C. O subconjunto de métodos de predição é selecionado da Tabela 4 de acordo com a informação de contexto dos blocos vizinhos L, U. Cada linha da Tabela 4 define um subconjunto do método de predição para um certo par de classes de contexto para os blocos vizinhos L, U e a prioridade (grau) dos métodos de predição no subconjunto. O enfileiramento é usado para simplificar a sinalização contexto-dependente dos métodos de predição, como descrito após nesta descrição. Por exemplo, se o primeiro bloco vizinho L é classificado em uma classe de contexto C2 e o segundo bloco vizinho U é classifir.arln m classe de contexto C4, u subconjunto para esta combinação inclui os métodos de predição Pl, P9, P5, P13, P7 e P6 (na ordem de classificação). O estimador predição 3 seleciona o método de predição mais apropriado deste subconjunto, como detalhado a seguir nesta descrição.
Tabela 4 A seguir, os métodos de predição definidos são descritos em maiores detalhes.
Método de predição PI O método de predição PI prediz o valor do pixel comum do bloco C dos valores de pixel comuns do blocos L, UL, U e UR. O valor de pixel comum dL, dUL e dU dos blocos L, UL, e U reconstruídos que são calculados como uma divisão de inteiros definida como: (3) onde N é o tamanho do bloco, I(x,y) representa os valores de intensidade do pixel e " / / " denota divisão com truncamento para um valor inteiro. O valor de pixel comum dC do bloco C é predito de acordo com um grupo de regras a seguir (que são descritos abaixo na forma de pseudo-código): se todos os blocos L, U e UL existem, então, se dL = dU - dUL então dC = dUL senão se dUL = dU então dC = dL senão se dUL = dL então dC = dU senão se dL = dU então se nreriir.ãn He dhmminonw então dU — dL senão se | dUL - dL | <4 então dC = s(dL + dU - dUL) senão dC = dL senão se dUL <dL <dU então dC = dU senão se dUL <dU <dL então dC = dL senão se dU <dL <dUL então dC = dU senão se dL <dU <dUL então dC = dL senão se dL <dUL <dU OU dU <dUL <dL então dC = s(dL + dU - dUL) senão se blocos L e U existem dC então = (dL + dU+1)//2 senão se blocos L e UL existem dC então = dL senão se blocos U e UL existem dC então = dU senão se bloco L existe dC então = dL senão se bloco U existe dC então = dU senão se bloco UL existe dC então = dUL senão dC = p onde p é um valor que está no meio de um possível gama do valor de pixel, por exemplo 128," / / " denota a divisão com truncamento e s é uma função cortante que restringe os valores à uma possível gama de valores de pixel, por exemplo, entre 0 e 255 em um sistema que usa uma representação dos valores de luminância/crominância de 8 bits. Como resultado, o bloco de predição para C é preenchido com os pixels que possuem um valor constante dado por dC. O método de predição PI é ilustrado na Figura 5a. Método de predição P2-P4 Os métodos de predição P2-P4 predizem as formas diagonais no bloco C estendendo os detalhes da imagem da direção superior direita no bloco C. A predição é executada copiando os valores do pixel de referência nos limites dos blocos U e UR no bloco C, como descrito nas Figuras 5b, 5c, 5d, respectivamente. Os pixels de referência que são marcados em cinza são conectados a um ou mais pixels preditos. A conexão é marcada como linha com pontos para indicar os pixels predito conectados, o valor do pixel de referência é copiado para todos os pixels preditos conectados.
Desde aue um ou mais blocos de referência nnscam pctar Fy^^eníveis. ictc é, a classe de contexto deles pode ser CO, a predição é executada de acordo com regras a seguir.
Regrai Se ambos os blocos, U e UR, são classificados em urna das classes Cl - C6, a predição do pixel é executada como mostrado nas Figuras 5b, 5c e 5d respectivamente. Para o método de predição P2 (Figura 5b), os pixels sem qualquer pixel de referência correspondente no bloco UR são alocados vantajosamente ao valor do pixel de referência de mais a direita no bloco UR.
Regra 2 Se o bloco U é classificado em uma das classes Cl - C6 e bloco UR é classificado como CO, a predição de pixel é executada como mostrado nas Figuras 5b, 5c e 5d para os pixels que tem um pixel de referência no bloco U. O resto dos pixels é fixado vantajosamente ao valor do pixel no canto mais baixo à direita do bloco de referência U.
Regra 3 Se o bloco U for classificado como CO, o bloco atual C é vantajosamente preenchido com os pixels que possuem um valor constante que está substancialmente no meio de uma possível gama dinâmica de valores de pixel, por exemplo, 128 (em um sistema, que usa os valores de representação de luminância/crominância de 8 bits). Método de predição P5 e P9 Os métodos de predição P5 (Figura 5e) e P9 (Figura 5i) predizem as formas verticais e horizontais no bloco atual C, estendendo os detalhes de imagem no bloco atual C, ou de cima ou da esquerda. Dependendo do método selecionado (P5 ou P9), os valores do pixel de referência no limite de ou do bloco U ou L são copiados para o bloco atual C como descrito nas Figuras 5e e 5i.
Se a classe de contexto do bloco de referência é CO, o bloco atual C é vantajosamente preenchido com os pixels que possuem um valor constante que está substancialmente no meio de uma possível gama dinâmica de valores de pixel, por exemplo, 128 (em um sistema, que usa os valores de representação de luminância/crominância de 8 bits). Método de predição P6. P7 e P8 Os métodos de predição P6, P7 e P8 predizem as formas diagonais no bloco atual C estendendo os detalhes de imagem da direção da esquerda superior no bloco atual C como descrito nas Figuras 5f, 5g e 5h, respectivamente. A predição é executada copiando os valores do pixel de referência nos limites dos blocos L, UL e U no bloco atual C de acordo com regras seguintes.
Regra 1 Se todos os blocos L, UL e U forem classificados em uma das classes Cl -C6, a predição do pixel para o bloco atual C é executado como ilustrado nas Figuras 5f, 5g e 5h.
Regra 2 Se os blocos UL e U são classificados em uma das classes Cl - C6 e o bloco L for classificado como CO, a predição do pixel para o bloco atual C é executado como mostrado nas Figuras 5f, 5g e 5h para esses pixels do bloco atual C que possuem um valor de pixel de referência nos blocos UL e U. O pixels restantes no bloco atual C são nomeados vantajosamente, o valor do pixel no canto mais baixo a esquerda da área do pixel de referência no bloco UL.
Regra 3 Se os blocos L e UL são classificados em uma das classes Cl - C6 e o bloco U for classificado como CO, a predição de pixel para o bloco atual C é executado, como mostrado nas Figuras 5f, 5g e 5h para esses pixels do bloco atual C que tem um pixel de referência nos blocos L e UL. Os pixels restantes no bloco atual C são nomeados vantajosamente, o valor do pixel no canto superior a direita da área de pixel de referência no bloco UL.
Regra 4 Se os blocos L e U são classificados em uma das classes Cl - C6 e o bloco UL é classificado como CO, a predição de pixel para o bloco atual C é executado, como mostrado nas Figuras 5f, 5g e 5h para esses pixels do bloco atual C, que tem um pixel de referência nos blocos L e U. Os pixels com o pixel de referência no bloco UL são preditos como apresentado nas Figuras 5n, 5o e 5p. No caso do método P7, o valor do pixel predito é a média dos dois valores de pixel de referência arredondada ao valor mais próximo do inteiro, como indicado na Figura 5a .
Regra 5 Se o bloco L é classificado em uma das classes Cl - C6 e os blocos UL e U são classificados como CO, a predição de pixel para o bloco atual C é executado, como mostrado nas Figuras 5f, 5g e 5h para esses pixels do bloco atual C que tem um pixel de referência no bloco L. Os pixels restantes no bloco atual C são nomeados vantajosamente, o valor do pixel no canto superior a direita da área de pixel de referência no bloco L.
Regra 6 Se o bloco UL é classificado em uma das classes Cl - C6 e os blocos L e U são classificados como CO, a predição de pixel para o bloco atual C é executada, como mostrado nas Figuras 5f, 5g e 5h para esses pixels do bloco atual C, que tem um pixel de referência nos blocos UL. Os pixels do bloco atual C que têm um pixel de referência no bloco L vantajosamente designados para o valor do pixel de referência de inferior/esquerda no bloco UL. Os pixels do bloco atual C que têm um pixel de referência no bloco U são designados para o valor do pixel de referência de superior/direita no bloco UL.
Regra 7 Se o bloco U é classificado em uma das classes Cl - C6 e os blocos L e UL são classificados como CO, a predição de pixel para o bloco atual C é executado como mostrado nas Figuras 5f, 5g e 5h para esses pixels do bloco atual C, que tem um pixel de referência no bloco U. Os pixels restantes do bloco atual C são nomeados vantajosamente para o valor do pixel no canto mais baixo esquerdo da área de pixel de referência no bloco U.
Regra 8 Se todos os blocos L, UL e L são classificados como CO, o bloco atual C é vantajosamente preenchido com os pixels que tem um valor constante que está substancialmente no meio de uma possível gama dinâmica de valores de pixel, por exemplo, 128 (em um sistema, usa os valores de representação de luminância/crominância de 8 bits). Método de predição PIO, PI 1 eP12 Os métodos de predição PIO - P12 predizem as formas rliaannaic nr> hln™ atual C estendendo os detalhes de imagem da esquerda no bloco atual C, como descrito nas Figuras 5j, 5k e 51, respectivamente. A predição é executada copiando o valor do pixel de referência no limite do bloco L no bloco atual C de acordo com regras seguintes.
Regra 1 Se o bloco L é classificado em uma das classes Cl - C6, a predição de pixel para o bloco atual C é executada como ilustrado nas Figuras 5j, 5k e 51. Os pixels do bloco atual C sem o pixel de referência no bloco L são vantajosamente preenchidos com o valor do pixel no canto mais baixo a direita da área de pixel de referência.
Regra 2 Se o bloco L é classificado como CO, o bloco atual C é vantajosamente preenchido com os pixels que tem um valor constante que está substancialmente no meio de uma possível gama de valores de pixel, por exemplo 128 (em um sistema, que usa os valores de representação luminância/crominância de 8 bits). Método de predição PI3 O método de predição PI3 prediz o conteúdo do bloco atual C do conteúdo de imagem vizinho examinando se lá existe uma gama de pixels que tem os valores que substancialmente correspondem aos valores de pixel do bloco atual C. A predição do bloco atual C é executado copiando os valores de pixel reconstruídos de um bloco de referência B que está dentro de uma gama de procura SR como descrito na Figura 5m. A gama de procura SR é definida através das listas de deslocamentos horizontal (x) e vertical (y). Cada par de valores (x, y) de deslocamento horizontal e de deslocamento vertical correspondente definem um vetor de deslocamento entre as coordenadas de canto esquerdo superior do bloco atual C e do canto esquerdo superior do bloco de referência B. A predição só é permitida para esses deslocamentos que correspondem ao bloco de referência B que está completamente dentro da parte reconstruída do quadro. Exemplos de pares de deslocamento que usam 512 deslocamentos para os blocos 8x8 são apresentados nas Tabelas 9a e 9b. Neste exemplo a ordem do escaneamento das tabelas é do superior-esquerda para a inferior-direita coluna por coluna. Nas incorporações alternativas da invenção, a gama de procura pode ser diferente da descrita na Figura 5m e/ou o deslocamento entre o bloco de referência B e o bloco atual podem ser definidos diferentemente. A lista de deslocamentos permitidos é conhecida do codificador e do decodificador, permitindo uma sinalização contexto-dependente da localização do bloco de referência selecionado.
Existem muitos modos alternativos para selecionar o método de predição de um subconjunto de métodos de predição. Por exemplo, uma função de custo pode ser definida para avaliar a efetividade dos métodos de predição diferentes do subconjunto a ser usado. A função de custo pode ser calculada com base na informação relativa ao erro incorrido ao predizer um bloco atual C, usando um método de predição particular. Este erro denota as diferenças entre os valores de pixel atuais e os valores de pixel reconstruídos. Tipicamente, os valores de erro para cada pixel no bloco atual C são quadrados e somados para produzir uma medida de erro quadrada para o bloco inteiro junto. A função de custo também pode incluir a informação relativa ao número de bits, isto é, a taxa de bits necessária para transferir a informação para o receptor. Os elementos da função de custo, particularmente taxa de bits, também pode ser ponderada para os enfatizar. Um exemplo de uma função de custo é: Cx = D + XR, (4) onde o valor Cx é definido como uma soma ponderada da distorção D e taxa R associada com cada um dos métodos de predição e 1 é o fator de ponderação. Se o sistema de transmissão for faixa limitada, o valor de ponderação é tipicamente maior que se a largura de banda for larga. Os valores para a fórmula (4) são calculados para os métodos de predição diferentes e, preferivelmente o método de predição que tem o menor valor para a função de custo que é selecionada.
Adicionalmente, as informações de erro de predição também podem ser codificadas antes da transmissão ao receptor. Vantajosamente, existe um subconjunto de métodos de codificação definidos para cada método de predição. Especificamente, o método de codificação poderia ser escolhido para minimizar o número de bits exigido para codificar o erro de predição. Por exemplo, a efetividade (taxa de bits) do método de codificação é examinado.
Se o erro de predição for relativamente pequeno, pode não ser necessário transmitir a informação de erro toda.
Recorrendo mais uma vez às Figuras 1 e 2, uma vez que o método de predição satisfatório foi selecionado para predizer o bloco atual C, o estimador 3 de predição executa a predição 22 espacial de acordo com o método de predição selecionado. O estimador 3 de predição direciona o bloco reconstruído para o somador 4 onde o bloco reconstruído é subtraído dos conteúdos atuais do bloco atual C, para produzir a informação de erro de predição para o bloco atual. O codificador 1 envia 23 a informação sobre o método de predição selecionado para o multiplexador 9, que é acompanhado através da informação de deslocamento, se o método P13 for usado. Vantajosamente, o método de predição selecionado é indicado por sua posição no subconjunto dos métodos de predição apropriados para a combinação particular dos blocos vizinhos (U, L) em questão.
Codificando a informação é vantajosamente executada usando uma codificação de comprimento variável. A informação é transmitida ao receptor 10, onde o demultiplexador 11 demultiplexa a informação recebida. No receptor 10 a informação de predição é dirigida ao preditor 16. O receptor 10 também inclui uma memória 14 de quadro, onde os blocos previamente reconstruídos são armazenados. Quando um bloco codificado novo chega ao receptor, o preditor 16 executa os passos de classificação para os blocos vizinhos U, L do bloco atual C recebido para os classificar nas classes de direcionamento, como previamente descrito. Então o preditor 16 leva o mapeamento da informação de classificação nas classes de contexto Cl - C6. Após, o predictor 16 também examina o grau do método de predição. O receptor 10 contém a informação das Tabelas 4 e 5, onde o preditor 16 pode determinar o método de predição correto de acordo com a combinação da classe de contexto e a posição.
Quando o método de predição foi determinado, o preditor 16 pode reconstruir o bloco atual C e pode salvar este na memória 14 de quadro. Em uma situação onde informação de erro de predição também é recebida, a informação é primeiro decodificada no decodificador 12, se necessário, e combinada com os valores de pixel do bloco reconstruído C. Agora, o bloco atual C está pronto para ser dirigido à saída 15 do receptor.
Se o método de predição do bloco atual C é P13, a reconstrução dn hW.n atual C é executado de uma maneira ligeiramente diferente. Neste caso, o receptor 10 tem também que decodificar a informação de deslocamento, onde a informação de deslocamento é usada para copiar os valores de pixel do bloco atual C dos valores de pixel previamente reconstruídos na memória 14 de quadro. A sinalização do método de predição é vantajosamente baseada nos códigos contexto-dependentes definidos na Tabela 5. Depois de selecionar o método de predição apropriado, o codificador 1 envia uma palavra-código de comprimento variável que corresponde ao grau do método de predição selecionado no subconjunto contexto-dependente. São listados exemplos vantajosos de palavras-código de comprimento variável que representa cada grau do método de predição na Tabela 5. Por exemplo, se o primeiro bloco vizinho L é classificado na classe de contexto C3 e o segundo bloco de vizinho U é classificado na classe de contexto Cl, e o método de predição P9 é selecionado do subconjunto dos métodos de predição para esta combinação, o grau respectivo é 2. Então, a palavra código que corresponde a este grau é " 01 Tabela 5 O receptor 10 está atento aos conteúdos da Tabela 4, isto é. sabe qual o método de predição corresponde a cada uma das posições em todo possível contexto (combinação de classes para os blocos vizinhos L e U). Desde que o receptor 10 possa derivar a mesma informação de contexto como o estimador 3 de predição, o receptor 10 pode associar a posição representada pelo palavra código recebida para corrigir o método de predição e executar a predição espacial para o bloco C de acordo com o método.
Em uma incorporação vantajosa da invenção, a sinalização dos deslocamentos horizontais e verticais associados com método de predição P13 é executada como a seguir: Passo 1 Estes pares de deslocamentos horizontais e verticais (X(i), Y(i)) que correspondem aos blocos de referência B que ficam parcialmente ou completamente fora do quadro são eliminados da lista ordenada das Tabelas 9a, 9b. O número de pares válidos é denotado por Nv e a lista ordenada dos pares válidos que são retidos depois da eliminação é denotada por Lv.
Passo 2 A posição r (que é um de 1,2,..., Nv) correspondendo ao bloco B escolhido dentro da lista Lv criada no Passo 1 é calculada.
Passo 3 Baseado no valor da posição r determinada no Passo 2 o valor indicei é calculado de acordo com a Tabela 6.
Passo 4 O índice2 do valor = r - OffsetBaixo(índicei) é calculado usando os valores listados na Tabela 6.
Tabela 6 Passo 5 A seguir, os bits variáveis são calculados como a seguir. Se Nv <OffsetAlto(indicei), é computado o valor para os bits variáveis usando vantaiosamente os a fórmula bits = [log2(l + Nv - OffsetBaixo(indicei))], onde [x] denota o inteiro mais próximo > x. Caso contrário, bits = AuxCompr(indicei).
Passo 6 Dependendo do valor de Nv a variável cujo substituto-manuscrito é indicei é codificada usando a Codificação de Comprimento Variável correspondente obtido na Tabela 7 e na Tabela 8. Esta palavra código é transmitida ao decodificador que é ilustrado com o bloco CW1 na Figura 6.
Passo 7 Se os bits variáveis são não zero, a representação binária de indice2 usa os vários bits que correspondem ao valor dos bits variáveis e esta palavra código é codificada e é transmitida ao receptor que é ilustrado com o bloco CW2 na Figura 6.
Considerando que o decodificador pode derivar uma lista ordenada de vetores de deslocamento válidos, e pode associar a posição representada pela palavra código recebida com o vetor de deslocamento correto. O bloco que transporta o método de predição de acordo com a invenção é implementado particularmente e vantajosamente em um processador de sinal digital ou em um dispositivo de propósito geral correspondente, adequado para o processamento de sinais digitais que podem ser programados para aplicar as funções de processamento predeterminada para os sinais recebidos como dados de entrada. As medidas de acordo com a invenção podem ser transportadas em um processador de sinal separado ou elas podem ser parte da operação de tal processador de sinal que também contém outras disposições para o processamento de sinal.
Um dispositivo de armazenamento pode ser usado para armazenar um programa que inclui uma máquina para executar os passos para executar o método de acordo com a invenção. Em uma incorporação vantajosa da invenção, o programa pode ser lido do dispositivo de armazenamento para um dispositivo compreendendo meios programáveis, por exemplo, um processador, para executar o método da invenção.
Um terminal 24 móvel planejado para uso como um dispositivo de telecomunicações vídeo portátil e aplicando o método de acordo com a invenção, inclui vantajosamente pelo menos um visor 25 para visualizar as imagens, disnnsitivr» de áudio 2C para capturar e reproduzir a informação de áudio, um teclado 27 para entrar, por exemplo, os comandos do usuário, uma parte de rádio 28 para comunicar com a rede móvel, dispositivo de processamento 29 para controlar a operação do dispositivo, uma memória 30 para armazenar a informação, e preferivelmente uma câmera 31 por levar as imagens. A presente invenção presente não está restrita apenas as incorporações apresentadas acima, mas pode ser modificada dentro do escopo das reivindicações apensas.
REIVINDICAÇÕES
Claims (30)
1. Método para codificar uma imagem digital, em cujo método a imagem digital c dividida nos blocos (C, L, li, UL, UR), cm que no método uma prediçâo espacial para o bloco (C) é executada para reduzir a quantidade da informação a ser transmitida, CARACTERIZADO pelo fato de que ao menos um método de prediçâo (PI-P13) é definido, uma classificação é determinada para ao menos um bloco vizinho (L, U) do bloco (C) a ser predito de acordo com os conteúdos do bloco vizinho (L, li), e um método de prediçâo (PI-P13) que é selecionado para o bloco corrente (C) com base em pelo menos uma classificação,
2, Método de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que a classificação para um bloco vizinho é determinada com base na informação de direcionamento do bloco.
3. Método de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a informação de direcionamento do bloco é determinada pelo cálculo de pelo menos um valor gradiente (gk) com base nos valores de pixel do bloco,
4, Método de acordo com a reivindicação 3, CARACTERIZADO pelo fato de que os valores gradiente (gt) são calculados com a formula a seguir: onde N é o tamanho do bloco, I(x, y) representa os valores de intensidade do pixel, os índices x e y referem-se às coordenadas da parte interna do pixel do bloco, e K representa as orientações delimitadas.
5. Método de acordo com a reivindicação 4, CARACTERIZADO pelo fato de que pelo menos oito classes de direcionamento (DO - D7) são definidas para as diferentes orientações delimitadas.
6. Método de acordo com qualquer uma das reivindicações 1 a 5, CARACTERIZADO pelo fato de que a classificação compreende outras 3 classes não direcionais (D08 - D10) correspondendo aos blocos planos, de estrutura compacta e de estrutura grossa.
7. Método de acordo com qualquer uma das reivindicações 1 a 6, CARACTERIZADO pelo fato de que no método ao menos duas classes de contexto (C0-C6) são definidas, onde a fase de mapeamento é executada, na qual a informação da classificação (D8 - D10) é mapeada em uma das classes do contexto (C0-C6).
8. Método de acordo com qualquer uma das reivindicações 1 a 7, CARACTERIZADO pelo fato de que no método a classificação é determinada por dois blocos vizinhos (L, U) do bloco (C) a ser predito de acordo com os conteúdos dos blocos vizinhos (L, U), as classes de contexto (C0-C6) são definidas pelos blocos vizinhos (L, U), e um método de predição (P1-P13) é selecionado para o bloco corrente (C) com base na combinação das classes de contexto definidas (C0-C6).
9. Método de acordo com qualquer uma das reivindicações 1 a 8, CARACTERIZADO pelo fato de que no método uma função de custo é definida, onde a seleção do método de predição compreende os passos de: - calcular o valor da função de custo para ao menos dois métodos de predição; - explorar os valores da função de custo calculada para encontrar o valor mínimo, e - selecionar o método de predição o qual produz um valor mínimo para a função de custo.
10. Método de acordo com a reivindicações 9, CARACTERIZADO pelo fato de que a função custo é definida como: Cx = D + 1λ R, onde o custo Cx é definido como o somatório ponderado da distorção D e a da taxa R associada com cada um dos métodos dc prediçao c λ c o fator dc ponderação.
11. Método de acordo com qualquer uma das reivindicações 1 a 10. CARACTERIZADO pelo Fato de que no método a prediçao de erro é definida com base no bloco predito e nos valores reais de pixel do bloco (C), e que a informação de prediçao de erro é codificada, e a informação de prediçao de erro codificada é transmitida.
12. Dispositivo para codificar uma imagem digital, a qual ê dividida nos blocos (C, L. U, UL, UR), em que o dispositivo compreende um dispositivo para executar uma predíçâo espadai para o bloco (C) para reduzir a quantidade de informação a ser transmitida. CARACTER! Z A DO pelo fato de que ao menos um método de prediçao (Pl-P13) é definido, onde o dispositivo também compreende um dispositivo para determinar uma classificação para ao menos um bloco vizinho (L.U) do bloco (C) a ser predito de acordo com os conteúdos do bloco vizinho (L. U), e um dispositivo para selecionar um método de prediçao (P1-PI3) para o bloco corrente (C) com base em pelo menos uma classificação,
13. Dispositivo de acordo com a reivindicação 12. CARACTERIZADO pelo fato de que o dispositivo para determinar a classificação compreende o dispositivo para determinar o direcionamento da informação do bloco.
14. Dispositivo de acordo com a reivindicação 13, CARACTERIZADO pelo fato de que o dispositivo para determinar o direcionamento da informação compreende um dispositivo para calcular ao menos um valor gradiente (gf) com base nos valores de pixel do bloco.
15. Dispositivo de acordo com a reivindicação 14, CARACTERIZADO pelo fato de que os valores gradiente (gO foram calculados com a fórmula a seguir: onde N é o tamanho do bloco» l(x, y) representa os valores de intensidade do pixel» os índices x e y referem-se às coordenadas da parte interna do pixel do bloco, e k representa as orientações delimitadas.
16. Dispositivo de acordo com a reivindicação 15» CARACTERIZADO pelo fato de que pelo menos oito classes de direcionamento (DO - D7) são definidas para as diferentes orientações delimitadas.
17. Dispositivo de acordo com qualquer uma das reivindicações 12 a 16, CARACTERIZADO pelo fato de que a classificação compreende outras 3 classes não direcionais (DOR - D10) correspondendo aos blocos planos, de estrutura compacta e de estrutura grossa.
18. Dispositivo de acordo com qualquer uma das reivindicações 12 a 17, CARACTERIZADO pelo fato de que ao menos duas classes de contexto (CO-Có) são definidas, onde o dispositivo compreende o dispositivo para executar a fase de mapeamento, na qual a informação da classificação (D8 - D10) é disposta para ser mapeada em uma das classes do contexto (CO-Có).
19. Dispositivo de acordo com qualquer uma das reivindicações 12 a 18, CARACTERIZADO pelo tato de que o dispositivo compreende um dispositivo para executar a classificação para os dois blocos vizinhos (L, U) do bloco (C) a ser predito de acordo com os conteúdos dos blocos vizinhos (L, U), um dispositivo para definir as classes de contexto (C0-C6) para os blocos vizinhos (L, U), e um dispositivo para selecionar um método de predição (P1-P13) para o bloco corrente (C) com base na combinação das classes de contexto definidas (C0-C6).
20. Dispositivo de acordo com as reivindicações 12 a 19, CARACTERIZADO pelo fato de que a função de custo é definida, onde o dispositivo para selecionar o método de predição compreende os passos de: - calcular o valor da função de custo para ao menos dois métodos de predição; - explorar os valores da função de custo calculada para encontrar o valor mínimo, e - selecionar o método de predição o qual produz um valor mínimo para a função de custo.
21. Dispositivo de acordo com a reivindicação 20, CARACTERIZADO pelo fato de que a função custo é definida como: Cx = D + XR, onde o custo Cx é definido como o somatório ponderado da distorção D e da taxa R associada com cada um dos métodos de predição e λ é o fator de ponderação.
22. Dispositivo de acordo com qualquer uma das reivindicações 12 a 21, CARACTERIZADO pelo fato de que o dispositivo compreende um dispositivo para definir uma predição de erro com base no bloco predito e nos valores reais de pixel do bloco (C), e um dispositivo para codificar a informação de predição de erro, e um dispositivo para transmitir a informação de predição de erro codificada.
23. Codificador (1) compreendendo um dispositivo para codificar uma imagem digital, e um dispositivo para dividir a imagem digital nos blocos (C, L, U, UL, UR), em que o codificador (1) compreende um dispositivo para executar uma predição espacial para o bloco (C) para reduzir a quantidade de informação a ser transmitida, CARACTERIZADO pelo fato de que ao menos um método de predição (P1-P13) foi definido, onde o codificador (1) também compreende um dispositivo para determinar a classificação para pelo menos um bloco vizinho (L, U) do bloco (C) a ser predito de acordo com os conteúdos do bloco vizinho (L, U), e um dispositivo para selecionar um método de predição (P1-P13) para o bloco corrente (C) com base em pelo menos uma classificação.
24. Codificador de acordo com a reivindicação 23, CARACTERIZADO pelo fato de que o dispositivo para determinar a classificação para ao menos um bloco vizinho é disposto para determinar uma classificação para o bloco vizinho com base na informação de direcionamento do bloco vizinho.
25. Decodificador (10) compreendendo um dispositivo para decodificar uma imagem digital, a qual é dividida nos blocos (C, L, U, UL, UR), em que o decodificador (10) compreende um dispositivo para executar uma predição espacial para o bloco (C) para reduzir a quantidade de informação a ser transmitida, CARACTERIZADO pelo falo de que ao menos um método de predição (P1-P13) foi definido, onde o decodificador (10) também compreende um dispositivo para determinar a classificação para pelo menos um bloco vizinho (L, U) do bloco (C) a ser predito de acordo com os conteúdos do bloco vizinho (L, U), e um dispositivo para selecionar um método de predição (P1-P13) para o bloco corrente (C) com base em pelo menos uma classificação.
26. Decodificador de acordo com a reivindicação 25, CARACTERIZADO pelo fato de que o dispositivo para determinara a classificação para ao menos um bloco vizinho é disposto para determinar uma classificação para o bloco vizinho com base na informação de direcionamento do bloco vizinho.
27. Codec (1, 10) compreendendo um dispositivo para codificar uma imagem digital, e um dispositivo para dividir a imagem digital nos blocos (C, L, U, UL, UR), e um dispositivo para decodificar uma imagem digital, em que o codec (1, 10) compreende um dispositivo para executar uma predição espacial para o bloco (C) para reduzir a quantidade de informação a ser transmitida, CARACTERIZADO pelo fato de que ao menos um método de predição (P1-P13) é definido, onde o codec (1, 10) também compreende um dispositivo para determinar a classificação para pelo menos um bloco vizinho (L, U) do bloco (C) a ser predito de acordo com os conteúdos do bloco vizinho (L, U), e um dispositivo para selecionar um método de predição (P1-P13) para o bloco corrente (C) com base em pelo menos uma classificação
28. Codec de acordo com a reivindicação 27, CARACTERIZADO pelo fato de que o dispositivo para determinar a classificação para ao menos um bloco vizinho é disposto para determinar uma classificação para o bloco vizinho com base na informação de direcionamento do bloco vizinho.
29. Terminal Móvel (24) compreendendo um dispositivo para codificar uma imagem digital, e um dispositivo para dividir a imagem digital nos blocos (C, L, U, UL, UR), e um dispositivo para decodificar uma imagem digital, em que o terminal móvel (24) compreende um dispositivo para executar uma predição espacial para o bloco (C) para reduzir a quantidade de informação a ser transmitida, CARACTERIZADO pelo fato de que ao menos um método de predição (P1-P13) foi definido, onde o terminal móvel (24) também compreende um dispositivo para determinar a classificação para pelo menos um bloco vizinho (L, U) do bloco (C) a ser predito de acordo com os conteúdos do bloco vizinho (L, U), e um dispositivo para selecionar um método de predição (P1-P13) para o bloco corrente (C) com base em pelo menos uma classificação.
30. Terminal Móvel de acordo com a reivindicação 29, CARACTERIZADO pelo fato de que o dispositivo para determinar a classificação para ao menos um bloco vizinho é disposto para determinar uma classificação para o bloco vizinho com base na informação de direcionamento do bloco vizinho.
Applications Claiming Priority (2)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| FI20000131A FI116819B (fi) | 2000-01-21 | 2000-01-21 | Menetelmä kuvien lähettämiseksi ja kuvakooderi |
| PCT/FI2001/000050 WO2001054416A1 (en) | 2000-01-21 | 2001-01-22 | A method for encoding images, and an image coder |
Publications (2)
| Publication Number | Publication Date |
|---|---|
| BR0107706A BR0107706A (pt) | 2002-11-19 |
| BRPI0107706B1 true BRPI0107706B1 (pt) | 2017-04-04 |
Family
ID=8557167
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI0107706A BRPI0107706B1 (pt) | 2000-01-21 | 2001-01-22 | método e dispositivo para codificar uma imagem digital, codificador, decodificador, codec e terminal móvel |
Country Status (14)
| Country | Link |
|---|---|
| US (3) | US6907142B2 (pt) |
| EP (1) | EP1249132B1 (pt) |
| JP (3) | JP2003520531A (pt) |
| KR (1) | KR100714355B1 (pt) |
| CN (2) | CN100473167C (pt) |
| AT (1) | ATE507678T1 (pt) |
| AU (1) | AU2001230276A1 (pt) |
| BR (1) | BRPI0107706B1 (pt) |
| CA (1) | CA2397090C (pt) |
| DE (1) | DE60144513D1 (pt) |
| FI (1) | FI116819B (pt) |
| HK (2) | HK1054288B (pt) |
| WO (1) | WO2001054416A1 (pt) |
| ZA (1) | ZA200205506B (pt) |
Families Citing this family (95)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| DE60220047T2 (de) * | 2001-05-29 | 2008-01-10 | Koninklijke Philips Electronics N.V. | Verfahren und einrichtung zum verbergen von fehlern |
| CN101448162B (zh) * | 2001-12-17 | 2013-01-02 | 微软公司 | 处理视频图像的方法 |
| US7978765B2 (en) * | 2002-03-22 | 2011-07-12 | Realnetworks, Inc. | Context-adaptive macroblock type encoding/decoding methods and apparatuses |
| JP4130780B2 (ja) * | 2002-04-15 | 2008-08-06 | 松下電器産業株式会社 | 画像符号化方法および画像復号化方法 |
| ES2788534T3 (es) * | 2002-05-28 | 2020-10-21 | Dolby Int Ab | Método y sistemas para la estimación, comunicación y organización de modos de intra-predicción de imágenes |
| US7289672B2 (en) | 2002-05-28 | 2007-10-30 | Sharp Laboratories Of America, Inc. | Methods and systems for image intra-prediction mode estimation |
| US7386048B2 (en) * | 2002-05-28 | 2008-06-10 | Sharp Laboratories Of America, Inc. | Methods and systems for image intra-prediction mode organization |
| KR101017094B1 (ko) * | 2002-06-11 | 2011-02-25 | 노키아 코포레이션 | 인트라 코딩에 기반한 공간 예측 |
| US7289674B2 (en) | 2002-06-11 | 2007-10-30 | Nokia Corporation | Spatial prediction based intra coding |
| RU2314656C2 (ru) * | 2002-06-11 | 2008-01-10 | Нокиа Корпорейшн | Внутреннее кодирование, основанное на пространственном прогнозировании |
| FI114071B (fi) | 2003-01-13 | 2004-07-30 | Nokia Corp | Kuvien käsitteleminen rajoitetulla bittimäärällä |
| US10554985B2 (en) | 2003-07-18 | 2020-02-04 | Microsoft Technology Licensing, Llc | DC coefficient signaling at small quantization step sizes |
| KR100612669B1 (ko) * | 2003-10-29 | 2006-08-14 | 에스케이 텔레콤주식회사 | 이동 통신 단말에서 고해상도 jpeg 화상을디스플레이하기 위한 방법과 이를 위한 이동 통신 단말 |
| KR101106910B1 (ko) | 2004-02-17 | 2012-01-25 | 엔엑스피 비 브이 | 큰 스틸 사진 처리 방법 및 디바이스와 컴퓨터 판독가능 저장 매체 |
| US7894530B2 (en) * | 2004-05-07 | 2011-02-22 | Broadcom Corporation | Method and system for dynamic selection of transform size in a video decoder based on signal content |
| US8116374B2 (en) | 2004-05-07 | 2012-02-14 | Broadcom Corporation | Method and system for generating a transform size syntax element for video decoding |
| KR101204788B1 (ko) | 2004-06-03 | 2012-11-26 | 삼성전자주식회사 | 영상의 공간 예측 부호화 방법, 부호화 장치, 복호화 방법및 복호화 장치 |
| CN101076983B (zh) | 2004-11-02 | 2013-04-17 | 核心无线许可有限公司 | 向接受者设备通知消息内容属性的方法和设备 |
| US20070171978A1 (en) * | 2004-12-28 | 2007-07-26 | Keiichi Chono | Image encoding apparatus, image encoding method and program thereof |
| KR100682912B1 (ko) * | 2005-01-05 | 2007-02-15 | 삼성전자주식회사 | 화상 데이터 부호화 및 복호화 방법 및 장치 |
| KR101108681B1 (ko) * | 2005-01-19 | 2012-01-25 | 삼성전자주식회사 | 동영상 코덱에서의 주파수 변환 계수 예측 방법 및 장치,이를 구비한 부호화 및 복호화 장치와 방법 |
| US8422546B2 (en) * | 2005-05-25 | 2013-04-16 | Microsoft Corporation | Adaptive video encoding using a perceptual model |
| KR100727972B1 (ko) * | 2005-09-06 | 2007-06-14 | 삼성전자주식회사 | 영상의 인트라 예측 부호화, 복호화 방법 및 장치 |
| US8176101B2 (en) * | 2006-02-07 | 2012-05-08 | Google Inc. | Collaborative rejection of media for physical establishments |
| JP2007116351A (ja) * | 2005-10-19 | 2007-05-10 | Ntt Docomo Inc | 画像予測符号化装置、画像予測復号装置、画像予測符号化方法、画像予測復号方法、画像予測符号化プログラム、及び画像予測復号プログラム |
| JP4732203B2 (ja) * | 2006-03-17 | 2011-07-27 | キヤノン株式会社 | 画像符号化装置及び復号装置及びそれらの制御方法、並びに、コンピュータプログラム及びコンピュータ可読記憶媒体 |
| US7995649B2 (en) | 2006-04-07 | 2011-08-09 | Microsoft Corporation | Quantization adjustment based on texture level |
| US8130828B2 (en) * | 2006-04-07 | 2012-03-06 | Microsoft Corporation | Adjusting quantization to preserve non-zero AC coefficients |
| US8059721B2 (en) * | 2006-04-07 | 2011-11-15 | Microsoft Corporation | Estimating sample-domain distortion in the transform domain with rounding compensation |
| US20070237237A1 (en) * | 2006-04-07 | 2007-10-11 | Microsoft Corporation | Gradient slope detection for video compression |
| US7974340B2 (en) | 2006-04-07 | 2011-07-05 | Microsoft Corporation | Adaptive B-picture quantization control |
| US8503536B2 (en) | 2006-04-07 | 2013-08-06 | Microsoft Corporation | Quantization adjustments for DC shift artifacts |
| KR100745765B1 (ko) * | 2006-04-13 | 2007-08-02 | 삼성전자주식회사 | 화상 데이터의 공간상 예측 장치 및 방법과 그를 이용한부호화 장치 및 방법, 화상 데이터의 공간상 예측 보상장치 및 방법과 그를 이용한 복호화 장치 및 방법 |
| US8711925B2 (en) | 2006-05-05 | 2014-04-29 | Microsoft Corporation | Flexible quantization |
| KR100882949B1 (ko) * | 2006-08-17 | 2009-02-10 | 한국전자통신연구원 | 화소 유사성에 따라 적응적인 이산 코사인 변환 계수스캐닝을 이용한 부호화/복호화 장치 및 그 방법 |
| KR101380843B1 (ko) * | 2006-12-28 | 2014-04-07 | 삼성전자주식회사 | 인트라 예측을 통해 부호화된 블럭들을 포함하는압축영상에 대한 축소영상 생성방법 및 이를 적용한영상기기 |
| US8238424B2 (en) | 2007-02-09 | 2012-08-07 | Microsoft Corporation | Complexity-based adaptive preprocessing for multiple-pass video compression |
| CA2676709C (en) * | 2007-02-23 | 2013-06-25 | Nippon Telegraph And Telephone Corporation | Video encoding method and decoding method, apparatuses therefor, programs therefor, and storage media which store the programs |
| US8498335B2 (en) | 2007-03-26 | 2013-07-30 | Microsoft Corporation | Adaptive deadzone size adjustment in quantization |
| US8243797B2 (en) | 2007-03-30 | 2012-08-14 | Microsoft Corporation | Regions of interest for quality adjustments |
| JP5082548B2 (ja) * | 2007-03-30 | 2012-11-28 | 富士通株式会社 | 画像処理方法、符号化器および復号化器 |
| US8442337B2 (en) | 2007-04-18 | 2013-05-14 | Microsoft Corporation | Encoding adjustments for animation content |
| US8331438B2 (en) * | 2007-06-05 | 2012-12-11 | Microsoft Corporation | Adaptive selection of picture-level quantization parameters for predicted video pictures |
| BR122019021946B1 (pt) | 2007-06-29 | 2024-02-06 | Velos Media International Limited | Dispositivo de codificação de imagem para codificar imagens de entrada e dispositivo de decodificação de imagem para decodificar dados de imagens codificados |
| US8117149B1 (en) * | 2007-09-12 | 2012-02-14 | Smith Micro Software, Inc. | Prediction weighting method based on prediction contexts |
| JP2009094828A (ja) | 2007-10-10 | 2009-04-30 | Hitachi Ltd | 画像符号化装置及び画像符号化方法、画像復号化装置及び画像復号化方法 |
| EP2081386A1 (en) | 2008-01-18 | 2009-07-22 | Panasonic Corporation | High precision edge prediction for intracoding |
| KR20090095316A (ko) * | 2008-03-05 | 2009-09-09 | 삼성전자주식회사 | 영상 인트라 예측 방법 및 장치 |
| KR101608426B1 (ko) * | 2008-03-28 | 2016-04-04 | 삼성전자주식회사 | 영상의 인트라 예측 부호화/복호화 방법 및 그 장치 |
| US8189933B2 (en) | 2008-03-31 | 2012-05-29 | Microsoft Corporation | Classifying and controlling encoding quality for textured, dark smooth and smooth video content |
| US8897359B2 (en) | 2008-06-03 | 2014-11-25 | Microsoft Corporation | Adaptive quantization for enhancement layer video coding |
| TWI386068B (zh) * | 2008-10-22 | 2013-02-11 | Nippon Telegraph & Telephone | 解塊處理方法、解塊處理裝置、解塊處理程式及記錄該程式之可由電腦讀取之記錄媒體 |
| JP5238523B2 (ja) * | 2009-01-13 | 2013-07-17 | 株式会社日立国際電気 | 動画像符号化装置、動画像復号化装置、および、動画像復号化方法 |
| WO2010087157A1 (ja) * | 2009-01-29 | 2010-08-05 | パナソニック株式会社 | 画像符号化方法及び画像復号方法 |
| US8964851B2 (en) * | 2009-06-09 | 2015-02-24 | Sony Corporation | Dual-mode compression of images and videos for reliable real-time transmission |
| US8457425B2 (en) * | 2009-06-09 | 2013-06-04 | Sony Corporation | Embedded graphics coding for images with sparse histograms |
| US8285062B2 (en) * | 2009-08-05 | 2012-10-09 | Sony Corporation | Method for improving the performance of embedded graphics coding |
| US9467705B2 (en) * | 2009-12-30 | 2016-10-11 | Ariscale Inc. | Video encoding apparatus, video decoding apparatus, and video decoding method for performing intra-prediction based on directionality of neighboring block |
| US9736486B2 (en) | 2010-02-08 | 2017-08-15 | Nokia Technologies Oy | Apparatus, a method and a computer program for video coding |
| BR122020007923B1 (pt) | 2010-04-13 | 2021-08-03 | Ge Video Compression, Llc | Predição interplano |
| RS63059B1 (sr) | 2010-04-13 | 2022-04-29 | Ge Video Compression Llc | Kodiranje videa primenom podele sa više stabala na slikama |
| TWI575887B (zh) | 2010-04-13 | 2017-03-21 | Ge影像壓縮有限公司 | 在樣本陣列多元樹細分中之繼承技術 |
| KR101626688B1 (ko) | 2010-04-13 | 2016-06-01 | 지이 비디오 컴프레션, 엘엘씨 | 샘플 영역 병합 |
| WO2011129074A1 (ja) * | 2010-04-13 | 2011-10-20 | パナソニック株式会社 | 画像復号方法、画像符号化方法、画像復号装置、画像符号化装置、プログラム、及び集積回路 |
| JP5457929B2 (ja) | 2010-04-26 | 2014-04-02 | 京セラ株式会社 | 無線通信システムのパラメータ調整方法および無線通信システム |
| WO2011135841A1 (ja) * | 2010-04-29 | 2011-11-03 | パナソニック株式会社 | 画像符号化方法、画像復号方法、画像符号化装置および画像復号装置 |
| KR101456499B1 (ko) * | 2010-07-09 | 2014-11-03 | 삼성전자주식회사 | 움직임 벡터의 부호화 방법 및 장치, 그 복호화 방법 및 장치 |
| PH12013500092A1 (en) | 2010-07-15 | 2017-05-05 | Velos Media Int Ltd | Image intra-prediction mode estimation device, image encoding device, image decoding device, and encoded image data |
| KR101857935B1 (ko) | 2010-09-30 | 2018-05-14 | 선 페이턴트 트러스트 | 화상 복호 방법, 화상 부호화 방법, 화상 복호 장치, 화상 부호화 장치, 프로그램 및 집적 회로 |
| JP2012129925A (ja) * | 2010-12-17 | 2012-07-05 | Sony Corp | 画像処理装置および方法、並びに、プログラム |
| PH12015501603B1 (en) | 2010-12-23 | 2023-12-06 | Samsung Electronics Co Ltd | Method and device for encoding intra prediction mode for image prediction unit, and method and device for decoding intra prediction mode for image prediction unit |
| JP5524423B2 (ja) * | 2011-01-09 | 2014-06-18 | メディアテック インコーポレイテッド | 効率的なサンプル適応オフセットの装置及び方法 |
| JP5781313B2 (ja) * | 2011-01-12 | 2015-09-16 | 株式会社Nttドコモ | 画像予測符号化方法、画像予測符号化装置、画像予測符号化プログラム、画像予測復号方法、画像予測復号装置及び画像予測復号プログラム |
| US9860539B2 (en) * | 2011-06-13 | 2018-01-02 | Sun Patent Trust | Image decoding method, image coding method, image decoding apparatus, image coding apparatus, and image coding and decoding apparatus |
| CN102186086B (zh) * | 2011-06-22 | 2013-06-19 | 武汉大学 | 一种基于avs的帧内预测方法 |
| PH12014500016A1 (en) * | 2011-06-28 | 2014-05-19 | Samsung Electronics Co Ltd | Video encoding method using offset adjustments according to pixel classification and apparatus therefor, video decoding method and apparatus therefor |
| US20130083845A1 (en) | 2011-09-30 | 2013-04-04 | Research In Motion Limited | Methods and devices for data compression using a non-uniform reconstruction space |
| US9398300B2 (en) * | 2011-10-07 | 2016-07-19 | Texas Instruments Incorporated | Method, system and apparatus for intra-prediction in video signal processing using combinable blocks |
| EP2595382B1 (en) | 2011-11-21 | 2019-01-09 | BlackBerry Limited | Methods and devices for encoding and decoding transform domain filters |
| CN103164848B (zh) * | 2011-12-09 | 2015-04-08 | 腾讯科技(深圳)有限公司 | 图像处理方法和系统 |
| JPWO2014054267A1 (ja) * | 2012-10-01 | 2016-08-25 | パナソニックIpマネジメント株式会社 | 画像符号化装置及び画像符号化方法 |
| CN104838659B (zh) * | 2012-11-30 | 2019-09-10 | 索尼公司 | 图像处理装置及方法 |
| US10904551B2 (en) * | 2013-04-05 | 2021-01-26 | Texas Instruments Incorporated | Video coding using intra block copy |
| EP2938073A1 (en) * | 2014-04-24 | 2015-10-28 | Thomson Licensing | Methods for encoding and decoding a picture and corresponding devices |
| WO2016061743A1 (en) * | 2014-10-21 | 2016-04-28 | Mediatek Singapore Pte. Ltd. | Segmental prediction for video coding |
| US9979970B2 (en) | 2014-08-08 | 2018-05-22 | Qualcomm Incorporated | System and method for determining buffer fullness for display stream compression |
| US10284849B2 (en) | 2015-04-13 | 2019-05-07 | Qualcomm Incorporated | Quantization parameter (QP) calculation for display stream compression (DSC) based on complexity measure |
| US10356428B2 (en) | 2015-04-13 | 2019-07-16 | Qualcomm Incorporated | Quantization parameter (QP) update classification for display stream compression (DSC) |
| US10244255B2 (en) * | 2015-04-13 | 2019-03-26 | Qualcomm Incorporated | Rate-constrained fallback mode for display stream compression |
| US10523945B2 (en) | 2015-10-13 | 2019-12-31 | Lg Electronics Inc. | Method for encoding and decoding video signal |
| CN115278229B (zh) | 2015-11-11 | 2024-12-10 | 三星电子株式会社 | 对视频进行解码的设备和对视频进行编码的设备 |
| GB2574733B (en) | 2016-12-28 | 2020-05-06 | Arris Entpr Llc | Improved video bitstream coding |
| JP6917718B2 (ja) * | 2017-01-27 | 2021-08-11 | 日本放送協会 | 予測装置、符号化装置、復号装置、及びプログラム |
| US9906239B1 (en) * | 2017-06-28 | 2018-02-27 | Ati Technologies Ulc | GPU parallel huffman decoding |
| MY208069A (en) * | 2018-03-07 | 2025-04-11 | Huawei Tech Co Ltd | Method and apparatus for harmonizing multiple sign bit hiding and residual sign prediction |
Family Cites Families (24)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US5231484A (en) * | 1991-11-08 | 1993-07-27 | International Business Machines Corporation | Motion video compression system with adaptive bit allocation and quantization |
| US5253056A (en) * | 1992-07-02 | 1993-10-12 | At&T Bell Laboratories | Spatial/frequency hybrid video coding facilitating the derivatives of variable-resolution images |
| US5568569A (en) * | 1992-12-31 | 1996-10-22 | Intel Corporation | Method and apparatus for analyzing digital video images by merging displacement vectors |
| US5812197A (en) * | 1995-05-08 | 1998-09-22 | Thomson Consumer Electronics, Inc. | System using data correlation for predictive encoding of video image data subject to luminance gradients and motion |
| US5740283A (en) * | 1995-07-06 | 1998-04-14 | Rubin, Bednarek & Associates, Inc. | Digital video compression utilizing mixed vector and scalar outputs |
| GB2311183A (en) | 1996-03-13 | 1997-09-17 | Innovision Plc | Gradient based motion estimation |
| JP4166305B2 (ja) | 1996-09-20 | 2008-10-15 | エイ・ティ・アンド・ティ・コーポレーション | ビデオの画像コーディング及びイントラコーディングのための暗黙の係数予測及び走査適合化を提供するビデオコーダー |
| GB9701025D0 (en) | 1997-01-18 | 1997-03-05 | Lucas Ind Plc | Improvements relating to brake assemblies |
| GB9703470D0 (en) * | 1997-02-19 | 1997-04-09 | Thomson Consumer Electronics | Trick play reproduction of MPEG encoded signals |
| US5991447A (en) | 1997-03-07 | 1999-11-23 | General Instrument Corporation | Prediction and coding of bi-directionally predicted video object planes for interlaced digital video |
| US5878753A (en) | 1997-03-11 | 1999-03-09 | Schweitzer-Mauduit International, Inc. | Smoking article wrapper for controlling ignition proclivity of a smoking article without affecting smoking characteristics |
| KR100463004B1 (ko) | 1997-03-20 | 2005-06-02 | 주식회사 팬택앤큐리텔 | Mpeg-4vop부호화방법 |
| KR100529783B1 (ko) * | 1997-07-16 | 2006-03-28 | 주식회사 팬택앤큐리텔 | 영상신호 예측 부호화시 예측 방향 선택방법 |
| EP0895424B1 (en) | 1997-07-31 | 2007-10-31 | Victor Company of Japan, Ltd. | digital video signal inter-block predictive encoding/decoding apparatus and method providing high efficiency of encoding. |
| WO1999016251A1 (en) * | 1997-09-23 | 1999-04-01 | Koninklijke Philips Electronics N.V. | Motion estimation and motion-compensated interpolation |
| JP2001507908A (ja) | 1997-11-07 | 2001-06-12 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | 画像シーケンスの符号化 |
| JP3915855B2 (ja) * | 1997-12-19 | 2007-05-16 | ソニー株式会社 | 画像符号化装置および画像符号化方法、並びに学習装置および学習方法 |
| US6181829B1 (en) * | 1998-01-21 | 2001-01-30 | Xerox Corporation | Method and system for classifying and processing of pixels of image data |
| JP3905969B2 (ja) | 1998-01-30 | 2007-04-18 | 株式会社東芝 | 動画像符号化装置および動画像符号化方法 |
| KR100301833B1 (ko) * | 1998-08-20 | 2001-09-06 | 구자홍 | 오류은폐방법 |
| US6563953B2 (en) * | 1998-11-30 | 2003-05-13 | Microsoft Corporation | Predictive image compression using a single variable length code for both the luminance and chrominance blocks for each macroblock |
| US6795586B1 (en) * | 1998-12-16 | 2004-09-21 | Eastman Kodak Company | Noise cleaning and interpolating sparsely populated color digital image |
| KR100587280B1 (ko) * | 1999-01-12 | 2006-06-08 | 엘지전자 주식회사 | 오류 은폐방법 |
| US6331874B1 (en) * | 1999-06-29 | 2001-12-18 | Lsi Logic Corporation | Motion compensated de-interlacing |
-
2000
- 2000-01-21 FI FI20000131A patent/FI116819B/fi not_active IP Right Cessation
-
2001
- 2001-01-19 US US09/766,193 patent/US6907142B2/en not_active Expired - Lifetime
- 2001-01-22 AU AU2001230276A patent/AU2001230276A1/en not_active Abandoned
- 2001-01-22 DE DE60144513T patent/DE60144513D1/de not_active Expired - Lifetime
- 2001-01-22 CN CNB2005100563303A patent/CN100473167C/zh not_active Expired - Lifetime
- 2001-01-22 KR KR1020027009307A patent/KR100714355B1/ko not_active Expired - Lifetime
- 2001-01-22 AT AT01902443T patent/ATE507678T1/de not_active IP Right Cessation
- 2001-01-22 CN CNB018066828A patent/CN1214647C/zh not_active Expired - Lifetime
- 2001-01-22 BR BRPI0107706A patent/BRPI0107706B1/pt active IP Right Grant
- 2001-01-22 EP EP01902443A patent/EP1249132B1/en not_active Expired - Lifetime
- 2001-01-22 WO PCT/FI2001/000050 patent/WO2001054416A1/en not_active Ceased
- 2001-01-22 CA CA002397090A patent/CA2397090C/en not_active Expired - Lifetime
- 2001-01-22 JP JP2001553307A patent/JP2003520531A/ja active Pending
- 2001-01-22 HK HK03106477.6A patent/HK1054288B/zh not_active IP Right Cessation
-
2002
- 2002-07-10 ZA ZA200205506A patent/ZA200205506B/en unknown
-
2003
- 2003-09-10 HK HK06100170.6A patent/HK1080653B/zh not_active IP Right Cessation
-
2005
- 2005-06-06 US US11/146,196 patent/US7295713B2/en not_active Expired - Lifetime
-
2007
- 2007-09-20 JP JP2007244456A patent/JP2008054335A/ja not_active Withdrawn
- 2007-10-09 US US11/869,445 patent/US7567719B2/en not_active Expired - Lifetime
-
2012
- 2012-04-20 JP JP2012096255A patent/JP2012170122A/ja active Pending
Also Published As
| Publication number | Publication date |
|---|---|
| CN1658677A (zh) | 2005-08-24 |
| JP2003520531A (ja) | 2003-07-02 |
| US20080247657A1 (en) | 2008-10-09 |
| HK1054288B (zh) | 2006-02-03 |
| CA2397090A1 (en) | 2001-07-26 |
| JP2008054335A (ja) | 2008-03-06 |
| EP1249132B1 (en) | 2011-04-27 |
| KR100714355B1 (ko) | 2007-05-02 |
| HK1054288A1 (en) | 2003-11-21 |
| DE60144513D1 (de) | 2011-06-09 |
| US20050254717A1 (en) | 2005-11-17 |
| CN100473167C (zh) | 2009-03-25 |
| BR0107706A (pt) | 2002-11-19 |
| ZA200205506B (en) | 2003-01-16 |
| US20010017942A1 (en) | 2001-08-30 |
| WO2001054416A1 (en) | 2001-07-26 |
| FI116819B (fi) | 2006-02-28 |
| HK1080653A1 (zh) | 2006-04-28 |
| HK1080653B (zh) | 2009-07-10 |
| US6907142B2 (en) | 2005-06-14 |
| CN1214647C (zh) | 2005-08-10 |
| CN1418436A (zh) | 2003-05-14 |
| US7295713B2 (en) | 2007-11-13 |
| JP2012170122A (ja) | 2012-09-06 |
| ATE507678T1 (de) | 2011-05-15 |
| EP1249132A1 (en) | 2002-10-16 |
| FI20000131L (fi) | 2001-07-22 |
| KR20020077888A (ko) | 2002-10-14 |
| US7567719B2 (en) | 2009-07-28 |
| FI20000131A0 (fi) | 2000-01-21 |
| CA2397090C (en) | 2007-03-13 |
| AU2001230276A1 (en) | 2001-07-31 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI0107706B1 (pt) | método e dispositivo para codificar uma imagem digital, codificador, decodificador, codec e terminal móvel | |
| US20090268810A1 (en) | Geometric intra prediction | |
| JP5488612B2 (ja) | 動画像符号化装置および動画像復号装置 | |
| BRPI0214410B1 (pt) | Método de codificação e de decodificação de vídeo, codificador e decodificador de vídeo, produto de programa de computador, e, sinal de vídeo | |
| TW201924348A (zh) | 在合併模式中對視頻資料解碼的圖像解碼設備 | |
| JP7813353B2 (ja) | ブロックベースのビデオ符号化のための符号予測 | |
| CN115336272A (zh) | 基于空间邻域的仿射运动导出 | |
| WO2024104503A1 (zh) | 图像编解码 | |
| WO2010149577A1 (en) | Method and device for encoding a block of an image using a first block, a different second block and a yet different third block and corresponding decoding method and device | |
| CN100396102C (zh) | 用于预测视频数据单元的直流系数的方法和设备 | |
| Kang et al. | An error resilient coding scheme for H. 264/AVC video transmission based on data embedding | |
| CA2614571C (en) | A method for encoding images in a block-based manner employing block spatial prediction | |
| CA2572566C (en) | A method for encoding images in a block-based manner employing block spatial prediction | |
| WO2020042724A1 (zh) | 帧间预测方法、装置以及视频编码器和视频解码器 | |
| KR100668463B1 (ko) | 동영상 데이터의 인코딩을 위한 다중 참조 프레임 선택 방법 | |
| CN121286010A (zh) | 图像编码/解码方法、设备及存储比特流的记录介质 | |
| JP4785769B2 (ja) | 符号化装置及び符号化プログラム | |
| KR980013415A (ko) | 매크로 블록의 합병/패딩을 이용한 모양 적응 부호화 시스템 | |
| Garg et al. | Variable complexity motion compensated error concealment in video coding | |
| Wang | Research on error resilient schemes for video transmission | |
| Park | Design and Analysis of Low Complexity Video Coding for Realtime Communications | |
| KR980013416A (ko) | 매크로 블록의 합병을 이용한 모양 적응 부호와 시스템 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B06A | Patent application procedure suspended [chapter 6.1 patent gazette] | ||
| B09A | Decision: intention to grant [chapter 9.1 patent gazette] | ||
| B25A | Requested transfer of rights approved |
Owner name: NOKIA TECHNOLOGIES OY (FI) |
|
| B09X | Republication of the decision to grant [chapter 9.1.3 patent gazette] | ||
| B15K | Others concerning applications: alteration of classification |
Ipc: H04N 19/593 (2014.01) |
|
| B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |