Especificação



Baixar 2,81 Mb.
Página21/24
Encontro01.07.2018
Tamanho2,81 Mb.
1   ...   16   17   18   19   20   21   22   23   24

A2 Níveis do padrão H.264





Nível

Macroblocos por Segundo1

Macroblocos por Quadro

Resolução

Quadros por Segundo

Quadros de referência

Taxa de bit2

1

1485

99

128 × 96
176 × 144

30,9
15

8
4

64 kbps

1b

1485

99

128 × 96
176 × 144

30,9
15

8
4

128 kbps

1.1

3000


396

176 × 144
320 × 240
352 × 288

30,3
10
7,5

9
3
3

192 kbps

1.2

6000

396

352 × 288

15

6

384 kbps

1.3

11880

396

352 × 288

30

6

768 kbps

2

11880

396

352 × 288

30

6

2 Mbps

2.1

19800

792

352 × 480
352 × 576

30
25

6

4 Mbps

2.2

20250

1620

720 × 480
720 × 576

15
12.5

5

4 Mbps

3

40500

1620

720 × 480
720 × 576

30
25

5

10 Mbps

3.1

108000

3600

1280 × 720

30

5

14 Mbps

3.2

216000

5120

1280 × 720

60

4

20 Mbps

4

245760

8192

1920 × 1080
1280 × 720

30
60

4

20 Mbps

4.1

245760

8192

1920 × 1080
1280 × 720

30
60

4

50 Mbps

4.2

491520

8192

1920 × 1080

60

4

50 Mbps

5

589824

22080

2048 × 1024

72

5

135 Mbps

5.1

983040

36864

2048 × 1024
4096 × 2048

120
30

5

240 Mbps

Tabela AnA.2 – Níveis do MPEG-4 Parte 10 (H.264)
  1. Anexo B: Algoritmos de compressão


Este anexo fornece uma introdução às técnicas de compressão que são mais relevantes em aplicações multimídia distribuídas. O objetivo não é fornecer uma visão exaustiva mas sim enfatizar aspectos relacionados aos algoritmos de compressão mencionados no decorrer deste trabalho.




B1 Tipos de Compressão


As técnicas de compressão seguem duas estratégias:



  • Compressão sem perdas: na compressão sem perdas, a informação original é recuperada sem qualquer alteração após o processo de descompressão, isto é, o fluxo obtido após a descompressão é exatamente idêntico àquele existente antes da descompressão. Estratégias de compressão sem perdas são exigidas por certas aplicações multimídia onde a precisão da informação é essencial, como em imagens médicas. A compressão sem perdas é também conhecida como compressão reversível; e

  • Compressão com perdas: na compressão com perdas ou compressão irreversível, a informação obtida após a descompressão é diferente da original (antes da descompressão). Esta é a estratégia utilizada pela maior parte dos algoritmos de compressão, tanto de áudio quanto vídeo. Deve-se enfatizar, contudo, que muitas vezes as perdas ocorridas não são percebidas pelo observador.


B2 Categorias de Compressão


As técnicas de compressão são classificadas em duas categorias principais: codificação1 por entropia e codificação da fonte ("source encoding").




B2.1 Codificação de Entropia


A codificação de entropia refere-se às técnicas de compressão que não consideram a natureza da informação a ser comprimida. Técnicas baseadas em entropia tratam todos os dados como seqüências de bits, sem tentar otimizar a compressão através do conhecimento do tipo de informação a ser comprimida, ou seja, essas técnicas ignoram a semântica da informação. Um exemplo trivial de uma codificação por entropia é a substituição de uma série de 10 octetos sucessivos de valor 0 por um caractere especial - o "flag" - seguido do número 10.

A codificação de entropia produz uma compressão sem perdas e é geralmente executada através da supressão de sequencias repetitivas e da codificação estatística.

        1. B2.1.1 Supressão de sequências repetitivas

A supressão de sequencia repetitivas é a mais simples e antiga técnica de compressão usada em computação. Ela consiste na detecção de sequências de bits ou octetos (de fato, caracteres) e sua substituição pelo número de ocorrências seguido do "flag". Dois octetos que são geralmente alvo da substituição são aqueles representando os caracteres 0 (em dados numéricos) e branco (em dados textuais).



        1. B2.1.2 Codificação Estatística

A codificação estatística é uma técnica de codificação de entropia mais elaborada do que a supressão de sequências repetitivas. Ela consiste na identificação dos padrões de bits ou “bytes” mais frequentes em uma dada sequência e na sua substituição por menos bits. Os padrões menos frequentes serão codificados com mais bits enquanto os mais frequentes serão codificados com menos bits. Obviamente, há a necessidade de registro dos padrões (tanto inicial quanto a correspondente codificação) em uma tabela que é usada na compressão e descompressão. Tal tabela é referenciada como livro-código ("code-book'').

As duas principais formas de codificação estatística são a substituição de padrões e a codificação de Huffman.

A substituição de padrões é usada para a codificação de informação textual. Padrões frequentes de caracteres são substituídos por uma única palavra. Por exemplo, a palavra "multimídia" poderia ser substituída neste texto por *M e a palavra "rede" por *R.

Na codificação de Huffman, para uma dada sequência de dados, são calculadas as frequências de ocorrências de cada octeto. As ocorrências são armazenadas em uma tabela. A partir dessa tabela, o algoritmo de Huffman determina o número mínimo de bits para representar cada caractere e atribui um código que é armazenado no livro-código. Este método é usado tanto para compressão de imagens estáticas quanto em movimento. Dependendo dos parâmetros da implementação, um novo livro-código pode ser construído para todas imagens ou para um conjunto de imagens. No caso de vídeo, o livro-código pode ser refeito para cada quadro ou para um conjunto de quadros. Em todos os casos, o sistema final onde será feita a descompressão deve receber o livro-código do sistema final onde foi feita a compressão.

B2.2 Codificação da Fonte

A codificação da fonte é uma técnica de compressão dependente do sinal original. Por exemplo, um sinal de áudio tem certas características que podem ser exploradas na compressão: na fala, a supressão do silêncio é um típico exemplo de uma transformação que é estritamente dependente da semântica do sinal. De maneira similar, a pesquisa por blocos comuns entre quadros sucessivos de um fluxo de vídeo é também uma operação baseada no conhecimento da natureza do sinal.

A codificação da fonte pode produzir taxas de compressão bem mais altas do que a compressão por entropia. Porém, essas taxas estão intimamente ligadas à semântica do dado, sendo, assim, muito variáveis. Na realidade, a codificação por entropia e da fonte não são técnicas mutuamente exclusivas: na compressão de som, imagem ou vídeo, as duas técnicas são combinadas visando a obtenção da mais alta taxa de compressão possível.

A codificação da fonte pode produzir uma compressão com ou sem perdas, sendo classificada em três tipos: codificação de transformada, codificação diferencial e quantização vetorial.



        1. B2.2.1 Codificação de Transformada

Na codificação de transformada, o dado sofre uma transformação matemática de um domínio espacial ou temporal para um domínio abstrato mais adequado à compressão. O processo é, na maioria das vezes, reversível, isto é, aplicando a transformada inversa, o dado original é recuperado. Um exemplo de transformada é a Transformada de Fourier, que permite transformar uma medida que varia no tempo, f(t), em uma função g(). Essa nova função fornece a amplitude g - ou o coeficiente - das frequências  que compõem a função inicial. A função g() é a distribuição espectral de f(t). Nas representações espectrais de imagens, as frequências informam quão rapidamente as cores e a luminância mudam.

A idéia que norteia o processo de codificação de transformada é que, após a transformação, as partes mais significativas da informação - ou os coeficientes mais significativos (aqueles que contêm mais "energia") - são facilmente identificáveis e, possivelmente, agrupados em pacotes. Isso permite que os coeficientes mais significativos sejam codificados com maior precisão do que os menos significativos (de fato, alguns coeficientes podem até ser descartados). O fato da técnica de codificação de transformada considerar precisão e descartar coeficientes faz com que ela seja um processo de compressão com perda.

Além da Transformada de Fourier, há também a Transformada de Hadamar, Transformada de Haar e Transformada de Karhunen Loeve; a transformada matemática geralmente usada para imagens é Transformada de Cosseno Discreta ("Discrete Cosine Transform'' - DCT).


        1. B2.2.2 Codificação Diferencial

O princípio da codificação diferencial ou codificação preditiva é codificar apenas a diferença entre o valor real de uma amostra e o próximo valor previsto. Essa diferença é chamada diferença de predição ou termo de erro.

A codificação diferencial é particularmente adequada para sinais nos quais valores sucessivos são significativamente diferentes de zero mas não diferem muito uns dos outros, como no caso dos sinais de vídeo. Os três principais esquemas de codificação diferencial são: modulação de código de pulso diferencial, modulação delta e modulação de código de pulso diferencial adaptável.

A modulação de código de pulso diferencial ("differential pulse code modulation'' - DPCM) é um esquema onde o processo de predição (realizado através de uma função que calcula o próximo valor) não varia no tempo. O caso mais simples consiste na transmissão no tempo tn da diferença entre o valor da amostra em tn (o valor real) e o valor da amostra em tn+1 (o valor previsto).

A modulação delta é um caso particular da codificação DPCM, no qual a diferença entre o valor previsto e o valor corrente é codificado com apenas um bit, indicando que o valor do sinal será incrementado ou decrementado em um "quantum'' (uma constante pré-definida). A modulação delta é adequada para codificar sinais cujos valores não mudam muito rapidamente para uma dada frequência de amostras, isto é, é um esquema de codificação adequado para sinais de baixa frequência.

A modulação de código de pulso diferencial adaptável ("adaptive differential pulse code modulation'' - ADPCM) é uma versão mais sofisticada da codificação DPCM que, ao invés de usar uma função de predição fixa, usa uma função variável para estimar características de curta duração do sinal amostrado. Assim, uma extrapolação adaptável é aplicada. Como no DPCM, apenas o termo do erro é transmitido.



        1. B2.2.3 Quantização Vetorial

A quantização vetorial é um caso especial de substituição de padrão no qual o fluxo de dados é dividido em blocos chamados vetores. No caso de uma imagem, por exemplo, um vetor é geralmente um pequeno bloco, retangular ou quadrado, de pixels. O livro-código contém padrões de vetores (pré-definidos ou dinamicamente montados). Para cada vetor de uma amostra, o livro-código é consultado para verificar qual padrão (vetor do livro-código) que melhor combina com o vetor da amostra. Para evitar distorções resultantes de uma diferença significativa entre o dado real e o padrão, além da referência do padrão (o número de sua entrada na tabela), é transmitido também o termo de erro.





1   ...   16   17   18   19   20   21   22   23   24


©livred.info 2017
enviar mensagem

    Página principal