Compressão de vídeo

Origem: Wikipédia, a enciclopédia livre.
Ir para: navegação, pesquisa
Ambox rewrite.svg
Esta página precisa ser reciclada de acordo com o livro de estilo (desde Fevereiro de 2008).
Sinta-se livre para editá-la para que esta possa atingir um nível de qualidade superior.

Um vídeo (como arquivos do tipo AVI ou MPEG) é formado por várias imagens sendo projetadas. Cada imagem é chamada quadro e a quantidade de imagens projetadas por segundo é chamada cadência, medida em quadros por segundo (qps) ou frames por segundo (fps). Quanto mais quadros por segundo seu vídeo tiver, melhor, pois mais realista será a imagem. Vídeos normalmente trabalham com a mesma cadência da TV, que é de 30 quadros por segundo.

Uma maneira de diminuir o tamanho do vídeo é justamente diminuindo a quantidade de quadros por segundo. O tamanho do vídeo diminui, mas sua qualidade também: há “quebras de quadro”, isto é, os movimentos no vídeo ficam “truncados”, menos realistas.

Para diminuir o tamanho do vídeo é usada uma técnica de compressão de imagem, que funciona removendo das imagens informações que já foram projetadas. Por exemplo, imagine um vídeo onde tenha uma pessoa falando e que esta esteja parada. No primeiro quadro a imagem é projetada completa, mas no segundo os pedaços da imagem que são idênticos ao quadro anterior são removidos. Se só a boca da pessoa é que está se mexendo, somente a área da boca será desenhada no segundo quadro. Esta técnica economiza uma quantidade enorme de espaço, já que somente o primeiro quadro precisa estar completo, os demais só têm o que é diferente do quadro anterior. Esses quadros incompletos são chamados quadros delta (delta frames).

No padrão MPEG os quadros delta podem ser classificados em quadros P (de “predictive”) ou quadros B (de “bidirecionais”). Os quadros P funcionam da maneira descrita, enquanto os quadros B podem ainda ter a diferença não só para o quadro anterior, mas também a diferença para o quadro seguinte na seqüência, daí o nome “bidirecional”.

O problema é que por conta desta técnica, não haveria como você usar os recursos de avanço e retrocesso do seu tocador de mídia, pois ele precisaria tocar o filme desde o início para poder construir uma imagem que esteja no meio do filme, já que no meio do filme só haverá a informação do que é diferente para o quadro anterior e não uma imagem completa.

Por isso, de tempos em tempos é necessário inserir um quadro completo (como o primeiro quadro do filme) para que os recursos de avanço e retrocesso possam ser usados. Esses quadros completos são chamados quadros-chave (key frames) ou quadros I (I-frames). Quanto mais quadros-chave seu vídeo tiver, maior ele será (pois mais imagens completas, que ocupam mais espaço, serão inseridas), mas em compensação mais pontos de avanço e retrocesso existirão. Você precisa esperar o tocador chegar a um quadro-chave para que ele consiga mostrar o vídeo e quanto menos quadros-chave o vídeo tiver mais freqüente será este problema em seu vídeo.

Além dessa técnica descrita, cada quadro é comprimido usando um algoritmo baseado em perda de dados – da mesma forma que ocorre com imagens no formato JPEG e áudio no formato MP3, por exemplo. Isso significa que o vídeo comprimido não tem a mesma qualidade do vídeo original.

Production Level Video[editar | editar código-fonte]

O PLV (Production Level Video) é uma técnica de compressão assímétrica para a codificação de video a cores que requer que a mesma seja feita pela Intel® ou por uma entidade licenciada pela mesma. O RTV (Real Time Video) proporciona uma qualidade de video comparável à compressão JPEG e usa uma técnica de compressão simétrica e variável. As técnicas de compressão DVI permitem a compressão do video com taxas de 80:1 até 160:1 e a sua visualização a cores e em tamanho real a 24 frames por segundo, enquanto que o JPEG só permite a visualização de uma imagem aceitável numa pequena janela.

Princípios da Compressão de Vídeo[editar | editar código-fonte]

Pode-se utilizar algoritmos para comprimir imagens e tratar cada de quadro de vídeo individualmente.

M-JPEG - Motion J-PEG

Taxas típicas entre 10:1 e 20:1 não são suficientes para vídeo

Formato 4:2:2 para vídeo digital

Taxa de 216 Mbps

  • Redundância espacial (intra-quadro)
  • Redundância inter-quadro
    • Em um conjunto de quadros, pequenos movimentos acontecem de um quadro para outro
      • Videotelefonia (movimento dos lábios e olhos)
      • Cena de filme (pessoa ou veículo em movimento)
        • Ex.: cena de 3 s => (60 quadros/seg) => 180 quadros
    • Tipos de Quadro
    • Estimativa de Movimento
    • Compensação de movimento

Tipos de Quadro[editar | editar código-fonte]

2 tipos de quadros

  • Codificados de forma independente
    • Intracoded frames (I): I-frames/Quadros-I
  • Quadros estimados (predicted frames)
    • Predictive frames (P): P-frames/Quadros-P
    • Bidirectional frames (B - Intercoded ou interpolation frames): B-frames/Quadros-B
  • GOP - Group of Pictures

Decodificação

  • Quadro-I: imediata
  • Quadro-P: precisa do quadro quadro -I ou -P anterior
  • Quadro-B: precisa do quadro -I ou -P anterior e do quadro -I ou -P posterior
    • Maior retardo para decodificar
  • Para minimizar o retardo de decodificação dos quadros -B
    • ordem da codificação/transmissão dos quadros é invertida
    • ambos os quadros -I ou -P anterior e posterior estão disponíveis quando um quadro -B é recebido
  • Exemplo:
    • Sequência original
      • I B B P B B P BB I B B P ...
    • Sequência codificada
      • I P B B P B B I B B P B B ...
  • Quadro-PB
    • Dois quadros -P e -B vizinhos codificados juntos
    • Aumenta taxa de quadros sem aumentar significantemente a taxa de bits
  • D - Quadro de menor resolução
    • Quadros de menor resolução
      • Só considera os coeficientes DC de cada matriz 8x8 JPEG
    • Inseridos em intervalos regulares no fluxo de vídeo
    • Não são usados no processo de decodificação de quadros -P e -B
    • Usados para opções de fast-foward e rewind no vídeo em aplicações de vídeo-sob-demanda (VoD)

Estimativa e Compensação de Movimento[editar | editar código-fonte]

Usados na codificação de quadros -P e -B

Conteúdo da matriz de luminância Y é dividido em macroblocos de 16x16

  • Cada macrobloco tem um endereço

Tamanho do bloco para operação da transformada DCT contínua 8x8

Exemplo no formato 4:2:0

  • Para cada 4 amostras de luminância, 1 crominância Cr e 1 de crominância Cb
  • Matrizes 8x8 para Cr e Cb
  • 6 blocos DCT no total

Para codificar quadro-P (quadro alvo)

Para codificar quadro-B (quadro alvo)

Compressão de Vídeo[editar | editar código-fonte]

Quadros-I

Conteúdo do quadro alvo -> (Macroblocos) -> TCD Sequencial (FDCT) -> Quantização (Q) -> Codificação de Entropia (EE) -> Formatador

Quadros-P

Conteúdo do quadro alvo -> ["Caixa preta"] -> Bit de fluxo codificado

Quadros-B

Conteúdo do quadro alvo -> ["Caixa preta"] -> Bit de fluxo codificado

Exemplo de Padrão de Vídeo (TV)[editar | editar código-fonte]

Sistema NTSC

  • Formato: 2:3
  • 525 linhas
  • Razão de atualização de quadros: 30 quadros/seg
  • Sistemas de cores
    • Luminância e crominância
    • Sistema YIQ (NTSC)
      • Y = 0.299r + 0.587G + 0.114B
      • I = 0.74(R - Y) - 0.27(B - Y)
      • Q = 0.48 (R - Y) + 0.41 (B - Y)

Referências[editar | editar código-fonte]

Li, Z, Drew, M. S. e Liu, J. (2014), "Fundamentals of Multimedia", 2 ed., 727 p. 350 fig., 97 fig. color., ISBN-10: 0130618721
Compressão de dados
Teoria
Com perda · Sem perda
Tipo de dados de origem
áudio · banda · imagens · vídeo
Métodos
Lista de algoritmos - Algoritmos de Compressão