Sistemas Multimídia
Vídeo
Profa. Débora Christina Muchaluat Saade
[email protected]
Departamento de Ciência da Computação - UFF
Sistemas Multimídia
Tipos de Quadro
2 tipos de quadros
• Codificados de forma independente
– Intracoded frames
• I-frames/quadros-I
• Quadros estimados (predicted frames)
– Predictive frames
• P-frames/quadros-P
– Bidirectional frames (intercoded or interpolation
Sistemas Multimídia
Tipos de Quadro
Sistemas Multimídia
Estimação e Compensação de Movimento
Sistemas Multimídia
Estimação e Compensação de Movimento
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 continua 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
Sistemas Multimídia
Estimação e Compensação de Movimento
Para codificar quadro-P (quadro alvo)
• Conteúdo de cada macrobloco é comparado pixel-a-pixel com o conteúdo do macrobloco correspondente no quadro-I ou –P anterior (quadro de referência)
– Se o conteúdo casar, só o endereço do macrobloco é codificado
• Se o conteúdo não casar, a comparação é estendida em um área em volta do macrobloco no quadro de referência
– Só o conteúdo da matriz Y é utilizado na procura
– Se a média dos erros absolutos de todos os pixels no macrobloco
Sistemas Multimídia
Estimação e Compensação de Movimento
Se o conteúdo casou
• 2 parâmetros são codificados:
– Vetor de movimento (x,y)
• deslocamento do macrobloco sendo codificado e a área selecionada no quadro de referência
– Erro da estimativa
• 3 matrizes Y, Cr, Cb com a diferença dos valores de todos os pixels entre o macrobloco alvo e a área
selecionada no quadro de referência
Sistemas Multimídia
Estimação e Compensação de Movimento
Sistemas Multimídia
Estimação e Compensação de Movimento
Como macroblocos são pequenos
• Objetos que se movem em uma cena normalmente correspondem a vários macroblocos
– Vários macroblocos são afetados de maneira similar
• Vetor de movimento é codificado com codificação diferencial (depois Huffman)
Três matrizes diferença são codificadas como nos quadros-I
• JPEG (DCT, quantização e codificação por entropia)
Se não encontrar área correspondente no quadro de referência
• Codifica o macrobloco de forma independente como no quadro-I => JPEG (DCT, quantização e codificação por entropia)
Sistemas Multimídia
Estimação e Compensação de Movimento
Possibilidades de conteúdo de um macrobloco de quadro-P:
• Endereço do macrobloco do quadro-I ou –P anterior
• Vetor de movimento e matriz diferença em relação a um macrobloco do quadro anterior
• Codificado de forma independente como no quadro-I
Sistemas Multimídia
Estimação e Compensação de Movimento
Para codificar quadro-B (quadro alvo)
• Vetor de movimento e matrizes diferença são computados
– Primeiro com relação ao quadro-I ou –P anterior
– Depois com relação ao quadro-I ou –P posterior
– E ainda com a média dos conjuntos de valores computados anteriormente
• O conjunto com o menor conjunto de matrizes diferença é codificado como nos quadros-P
Sistemas Multimídia
Estimação e Compensação de Movimento
Sistemas Multimídia
Compressão de Vídeo
Quadros-I
Sistemas Multimídia
Compressão de Vídeo
Quadros-P
Sistemas Multimídia
Compressão de Vídeo
Quadros-B
Sistemas Multimídia
Estimação e Compensação de Movimento
Exemplo de formato do macrobloco codificado
• Tipo do quadro (I, P, B)
• Endereço
• Valor usado na quantização dos coeficientes DCT
• Vetor de movimento (se existir)
• Quais blocos 8x8 estão presentes
• Coeficientes DCT codificados como no JPEG para
Sistemas Multimídia
Princípios da Compressão de Vídeo
Tráfego gerado pelo codificador é VBR
Decodificador é mais simples, pois não precisa calcular estimativa de movimento
Taxas de compressão típicas:
• Quadros-I
– Similar ao JPEG (10:1 a 20:1)
• Quadros-P
– 20:1 a 30:1
• Quadros-B
– 30:1 a 50:1
Sistemas Multimídia
H.261
Padrão do ITU-T para serviços de videotelefonia e
videoconferência em redes digitais de serviços integrados (ISDN)
• Canais de transmissão em taxas múltiplas de 64 Kbps
• Padrão conhecido como px64, com p entre 1 e 30
– 64 kbps a 1.92 Mbps
Formatos de digitalização
• Common Intermediate Format (CIF) Quarter CIF (QCIF)
Sistemas Multimídia
H.261
Cada quadro é dividido em macroblocos de 16x16
• Resolução horizontal de 352 amostras (22 macroblocos)
• Resolução espacial
• Resolução temporal
Formato Y Cr e Cb
CIF 352 x 288 176 x 144
QCIF 176 x 144 88 x 72
Formato No. Quadros/seg
CIF 30
QCIF 15 ou 7.5
Sistemas Multimídia
H.261
Só quadros-I e –P
Três quadros-P entre cada par de quadros-I
Sistemas Multimídia
H.261
Frame H.261 define estrutura de grupos de macroblocos
GOB – group of (macro)blocks
• Matriz de 11 x 3 macroblocos
Sistemas Multimídia
H.261
12 GOBs no CIF (2 x 6) e 3 GOBs no QCIF
Sistemas Multimídia
H.261
Como a taxa gerada é variável, codificador utiliza buffer para regular a taxa de bits,
transformando-a em taxa constante para enviar no canal de transmissão
ajustes necessários são feitos variando o valor do
threshold de quantização
Sistemas Multimídia
H.261
Codificador
Sistemas Multimídia
H.263
Padrão do ITU-T para aplicações com transmissão de vídeo em redes sem fio e redes telefônicas tradicionais (PSTNs)
• Videotelefonia, videoconferência, jogos interativos ...
• Transmissão analógica com uso de modem
• Taxas mais baixas
– 28.8 kbps a 56 Kbps
Qualidade do H.261 a taxas baixas é ruim
• Só usa quadros-I e –P, regulando a taxa com quantum alto
H.263 utiliza os mesmos conceitos do H.261, oferecendo algumas facilidades para melhorar a qualidade
Formato 4:2:0 não entrelaçado
Sistemas Multimídia
H.263
Formatos de digitalização
• QCIF
• Sub-QCIF (S-QCIF)
Cada quadro é dividido em macroblocos de 16x16
• Resolução horizontal de 176 amostras (11 macroblocos)
• Resolução espacial
Formato Y Cr e Cb
QCIF 176 x 144 88 x 72
Sistemas Multimídia
H.263
Tipos de Quadro
• Quadros-I
• Quadros-P
• Quadros-B
• Quadros-PB
– Quadro-B e quadro-P sucessivo imediato
– Informação dos macroblocos dos dois quadros é
intercalada com informação do quadro-P precedendo o quadro-B
Sistemas Multimídia
H.263
Vetores de movimento não restritos
• Vetores de movimento normalmente estão restritos a uma área em volta do macrobloco correspondente no quadro de referência
– Área de procura para estimativa de movimento é limitada pela borda do quadro
• No H.263, os vetores de movimento não têm essas restrições
Sistemas Multimídia
H.263
Resiliência a erros
• Redes telefônicas e rede sem fio têm maior probabilidade de erros de transmissão de bits
– Corrompem macroblocos (GOBs) de um quadro
– Erros são propagados em quadros estimados (-P e –B)
– QCIF só tem três GOBs por quadro
• Piora os efeitos dos erros
Sistemas Multimídia
H.263
Sistemas Multimídia
H.263
Facilidades
• Error tracking
• Decodificação de segmento independente
• Seleção do quadro de referência