H.264: UMA BREVE DISCUSSÃO ACERCA DA CODIFICAÇÃO DE VÍDEO



Documentos relacionados
Codificação/Compressão de Vídeo. Tópico: Vídeo (Codificação + Compressão)

Compressão com perdas

Thales Trigo. Formatos de arquivos digitais

Recomendação H.261 para serviços audiovisuais a taxas de transmissão p*64 kbit/s

PAPEL BRANCO. Padrão de compactação de vídeo H.264. Novas possibilidades em vigilância por vídeo.

Informática Aplicada a Radiologia

Aula 2 Aquisição de Imagens

SEGMENTAÇÃO DE IMAGENS EM PLACAS AUTOMOTIVAS

Informática. Prof. Macêdo Firmino. Macêdo Firmino (IFRN) Informática Setembro de / 16

Conversores D/A e A/D

Arquitetura de Rede de Computadores

Prof. Daniel Hasse. Multimídia e Hipermídia

Admistração de Redes de Computadores (ARC)

Padrões ITU-T H.261 e H.263

1 Transmissão digital em banda base

Formatos de Imagem PNG. Universidade Federal de Minas Gerais. Bruno Xavier da Silva. Guilherme de Castro Leite. Leonel Fonseca Ivo

Processamento de Imagem. Prof. MSc. André Yoshimi Kusumoto

29/06/ :30 Leite Júnior QUESTÕES CESPE BACKUP

APLICATIVOS GRÁFICOS (AULA 4)

GUIA PADRONIZAÇÃO DE IMAGENS NO INDICADOR CRM

Compressão de Imagens

Capacidade = 512 x 300 x x 2 x 5 = ,72 GB

ESTRUTURAS DE DADOS II

Introdução à Transmissão Digital. Funções básicas de processamento de sinal num sistema de comunicações digitais.

4 Arquitetura básica de um analisador de elementos de redes

Organização e Arquitetura de Computadores I

Tecnologia PCI express. Introdução. Tecnologia PCI Express

Setores Trilhas. Espaço entre setores Espaço entre trilhas

DO ANALÓGICO AO DIGITAL: CONCEITOS E

2- Conceitos Básicos de Telecomunicações

2 Avaliação de desempenho de uma rede de telecomunicações

AVALIAÇÃO À DISTÂNCIA 1 GABARITO

Tecnologia de faixa para falha

CorelDRAW UM PROGRAMA DE DESIGN

ANÁLISE E IMPLEMENTAÇÃO DE ALGORITMOS DE COMPRESSÃO DE DADOS. Maria Carolina de Souza Santos 1 Orientador: Prof.º Ms.

Tabela de Símbolos. Análise Semântica A Tabela de Símbolos. Principais Operações. Estrutura da Tabela de Símbolos. Declarações 11/6/2008

ferramentas da imagem digital

APLICAÇÃO REDE APLICAÇÃO APRESENTAÇÃO SESSÃO TRANSPORTE REDE LINK DE DADOS FÍSICA 1/5 PROTOCOLOS DE REDE

3 Classificação Resumo do algoritmo proposto

Novell. Novell Teaming 1.0. novdocx (pt-br) 6 April 2007 EXPLORAR O PORTLET BEM-VINDO DESCUBRA SEU CAMINHO USANDO O NOVELL TEAMING NAVIGATOR

MRP II. Planejamento e Controle da Produção 3 professor Muris Lage Junior

Circuitos Digitais 144L

Introdução à Tecnologia Web HTML HyperText Markup Language XHTML extensible HyperText Markup Language Formatos de Imagens

5 passos para. implementação. do código de barras IDENTIFIQUE CAPTURE COMPARTILHE

Multiplexador. Permitem que vários equipamentos compartilhem um único canal de comunicação

UNIVERSIDADE CATÓLICA DE PETRÓPOLIS CENTRO DE ENGENHARIA E COMPUTAÇÃO

O que é RAID? Tipos de RAID:

Você pode dizer isso de novo! Compressão de Texto

UNIVERSIDADE FEDERAL DE SANTA CATARINA GRADUAÇÃO EM SISTEMAS DE INFORMAÇÃO DEPARTAMENTO DE INFORMÁTICA E ESTATÍSTICA DATA MINING EM VÍDEOS

Figura 1: Formato matricial de uma imagem retangular. Figura 2: Ampliação dos pixels de uma imagem

DEPARTAMENTO DE MATEMÁTICA E CIÊNCIAS EXPERIMENTAIS - Grupo 550 INFORMÁTICA Planificação Anual /Critérios de avaliação

Fundamentos de Hardware

2. O que é Redundância de código ou informação? Como a compressão Huffman utiliza isso? Você conhece algum formato de imagem que a utiliza?(1.

Centro Tecnológico de Eletroeletrônica César Rodrigues. Atividade Avaliativa

NBC TSP 10 - Contabilidade e Evidenciação em Economia Altamente Inflacionária

Bem- Vindo ao manual de instruções do ECO Editor de COnteúdo.

IW10. Rev.: 02. Especificações Técnicas

MÓDULO 7 Modelo OSI. 7.1 Serviços Versus Protocolos

FACULDADE PITÁGORAS DISCIPLINA: ARQUITETURA DE COMPUTADORES

Informática Básica para o PIBID

Banco de Dados Aula 1 Introdução a Banco de Dados Introdução Sistema Gerenciador de Banco de Dados

PROJETO DE REDES

Copyright 2013 VW Soluções

Portal do Projeto Tempo de Ser

3 Qualidade de serviço na Internet

Figura 1 - O computador

Manual do Painel Administrativo

R S Q Tabela 17 - Tabela verdade NOR

O PaperPort 12 Special Edition (SE) possui uma grande variedade de novos e valiosos recursos que ajudam a gerenciar seus documentos.

Prof.: Roberto Franciscatto. Capítulo 1.2 Aspectos Gerais

FACULDADE DE ENGENHARIA DE COMPUTAÇÃO. PROJETO FINAL I e II PLANO DE TRABALHO <NOME DO TRABALHO> <Nome do Aluno> <Nome do Orientador>

Capítulo 3. Avaliação de Desempenho. 3.1 Definição de Desempenho

Tutorial para utilização de imagens. Comissão de Acompanhamento e Validação de Materiais Didáticos CVMD/UFSC. Universidade Federal de Santa Catarina

Codificação de vídeo H.264 SVC - Scalable Video Coding João Gabriel Felipe Machado Gazolla - Universidade Federal Fluminense

Representação Binária de Dados

Multimédia, Qualidade de Serviço (QoS): O que são?

Aula 01 - Formatações prontas e condicionais. Aula 01 - Formatações prontas e condicionais. Sumário. Formatar como Tabela

Prof. Marcelo Machado Cunha Parte 3

Metadados. 1. Introdução. 2. O que são Metadados? 3. O Valor dos Metadados

PROJETO DE REDES

Introdução. Capítulo. 1.1 Considerações Iniciais

Esta dissertação apresentou duas abordagens para integração entre a linguagem Lua e o Common Language Runtime. O objetivo principal da integração foi

XDOC. Solução otimizada para armazenamento e recuperação de documentos

Colorindo com Números Representação de Imagens

Funções de Posicionamento para Controle de Eixos

Oficina de Multimédia B. ESEQ 12º i 2009/2010

Sistemas de Numeração

Manual Sistema MLBC. Manual do Sistema do Módulo Administrativo

Manual de Conversão para PDF Envio de Arquivos ao Diário Oficial

DATA WAREHOUSE. Introdução

Fotografia Digital Obtenção da Imagem e Impressão

Engenharia de Software III

Medição tridimensional

Redução de imagem no domínio espacial

Miguel Nascimento Nº TIM LTM 12 Janeiro 2011

ALESSANDRO RODRIGO FRANCO FERNANDO MARTINS RAFAEL ALMEIDA DE OLIVEIRA

Prevayler. Perola. André Luís Sales de Moraes Juliana Keiko Yamaguchi Tatiana Yuka Takaki

Transcrição:

H.264: UMA BREVE DISCUSSÃO ACERCA DA CODIFICAÇÃO DE VÍDEO Eduardo Viana Rezende eduardo.viana@superig.com.br Centro Universitário de Belo Horizonte Av. Prof. Mário Werneck, 1685 - Estoril CEP: 30455-610 - Belo Horizonte Minas Gerais Martineli Priscila Correia martineli.correia@gmail.com Centro Universitário de Belo Horizonte Av. Prof. Mário Werneck, 1685 - Estoril CEP: 30455-610 - Belo Horizonte Minas Gerais Resumo: A recomendação da União Internacional de Telecomunicações H.264, também conhecida como MPEG-4 - Parte 10/Codificação Avançada de Vídeo (AVC) apresenta-se como um padrão de codificação de vídeo promissor. Para tanto, muitos fabricantes têm adotado este padrão aberto, uma vez que suporta as mais eficientes técnicas de compactação de vídeo disponíveis. Nesse sentido, este texto apresenta uma breve discussão acerca do processo de codificação de vídeo na recomendação do padrão H.264. Palavras-Chave: Codificação de vídeo, H.264, MPEG-4. 1 INTRODUÇÃO O processo de codificação e compactação do sinal de vídeo digital envolve a aplicação de um algoritmo que cria um arquivo robusto e reduzido, pronto para transmissão ou armazenamento em diferentes redes digitais (PROAXIS, 2001). Para a recuperação do arquivo compactado, aplica-se um algoritmo inverso, de maneira a remontar o sinal de vídeo original e, virtualmente, exibir um conteúdo semelhante ao sinal codificado na fonte. O tempo que um arquivo leva para ser compactado, enviado, descompactado e executado é chamado de latência (PROAXIS, 2001). Quanto mais complexo é o algoritmo de compactação, mais alta é a latência, dada a complexidade de processamento. O par de algoritmos que funcionam nesse conjunto é denominado de codec (encoder/decoder) (RICHARDSON, 2003). Além disso, a compactação de vídeo também está associada à redução e remoção de dados redundantes do pacote de dados de vídeo, de forma que um arquivo de vídeo digital possa ser efetivamente enviado e armazenado de maneira eficiente (PROAXIS, 2001). Nesse sentido, de acordo com pesquisas recentes, o encoder proposto pela recomendação H.264 pode reduzir o tamanho de um arquivo de vídeo digital em até 80%, se comparado ao formato JPEG, e em mais de 50%, quando comparado ao padrão MPEG-4 - Parte 2 (RICHARDSON, 2003). Isso significa dizer que, dessa maneira, o sinal de vídeo digital ocupará largura de banda e espaço de armazenamento para o arquivo de vídeo bem menor que outros formatos.

2 VISÃO GERAL SOBRE A CODIFICAÇÃO DE VÍDEO A estrutura básica do processo de codificação implica a existência de um par de sistemas complementares: o codificador e o decodificador. O codificador é o sistema responsável pela redução da quantidade de bits do vídeo para transmissão ou armazenagem. Porém, para que o vídeo seja reproduzido, é necessário que esses bits sejam decodificados e este é o papel do decodificador. O par de sistemas codificador- decodificador é comumente chamado de CODEC (MANOEL, 2007). Grande parte dos codificadores tem a mesma estrutura básica, sendo diferenciados por alguns recursos e aplicações extras, possíveis devido aos avanços tecnológicos, que permitiu a utilização de mais esforço computacional. A figura 1 ilustra o processo. Figura 1 - CODEC contextualizado. De forma simplificada, a primeira etapa de um codificador começa com a captura e conversão do sinal de RGB para YCbCr. Essa conversão facilita a codificação, pois descorrelaciona as cores, separando a luminância da crominância e, na maioria casos, ainda faz uma sub-amostragem da segunda (nos sinais 4:2:2 e 4:2:0). Como a luminância é muito mais importante, por ser mais perceptível ao olho humano, pode ser separado mais espaço para ela e menos para a crominância. Esse sinal é então amostrado e é aplicada uma transformada (a mais comum é a 8x8 DCT do inglês, Discrete Cosine Transform). Depois, o sinal é compactado por entropia, tendo como resultado uma seqüência binária que representa o arquivo de vídeo. Para fazer a decodificação deste sinal é aplicado o inverso de cada etapa na ordem inversa do processo de codificação. Exceto pela quantização que, por não poder ser um processo inversível, é feita uma aproximação desta. Existem muitos blocos em cada codificador, mas, geralmente, são utilizados os mesmos encontrados em todos os codificadores, sendo algumas características alteradas, adicionadas e outras removidas. Com o passar do tempo e o avanço tecnológico, se tornou possível utilizar técnicas muito mais sofisticadas e que exigem muito menos mais recursos computacionais. A Transformada Cosseno Discreta (DCT) é importante pois muda a maneira de ver o sinal, alterando o seu domínio espacial. A DCT é uma das transformadas mais utilizada por mais se aproximar da transformada ótima, a Transformada de Karhunen-Loève (KLT) (ALCAIM, 1999). Estas transformadas modificam o domínio do sinal do tempo para freqüência, concentrando a energia deste em poucos coeficientes e removendo a redundância espacial. No caso de imagens, é aplicada uma transformada bi-direcional, já que o sinal tem duas dimensões. Qualquer que seja a transformada, ela não é aplicada diretamente sobre a imagem inteira. Primeiramente, a imagem é dividida em blocos menores. É então aplicada uma DCT uni-direcional nas colunas destes blocos e posteriormente nas linhas.

O resultado deste processo é um conjunto de N x N coeficientes que representam a imagem original no domínio da freqüência. Esses coeficientes são chamados de peso das funções base da DCT. O primeiro coeficiente de cada bloco, de coordenadas horizontal e vertical nulas, é chamado de DC e representa o brilho médio deste. Os outros coeficientes são chamados de AC e muitos deles são nulos (SCHAFER, 2003). Figura 2 - Funções Base da DCT 8x8. Posteriormente, pode-se reconstruir o sinal combinando-se as funções base da DCT da figura 2, com cada função da DCT sendo multiplicada pelo seu peso, ou coeficiente, correspondente. A DCT não reduz a quantidade de bits necessária para representar cada pixel. Na verdade ela até usa mais bits para representar cada coeficiente. A redução da quantidade de bits necessários para representar cada bloco vem do fato que a transformada concentra energia de baixa freqüência e os coeficientes de alta freqüência tendem a valores próximos de zero. Assim, não são transmitidos os coeficientes com valores próximos a zero e os outros coeficientes são quantizados e codificados. Isso é fruto da correlação espacial existente entre os pixels próximos num mesmo quadro. A figura 3 apresenta a transformada de um macrobloco da imagem LENA, monocromática, de 256x256 pixels.

Figura 3 Aplicação da DCT Depois de aplicada a transformada é então feito o processo de quantização. Mais uma vez existem diversos métodos, uns mais eficientes e outros com uma qualidade do sinal de saída melhor. O objetivo da quantização é enviar menos informações (bits) para ser codificada e posteriormente decodificada. Este processo reduz a qualidade da imagem e é o único que é irreversível, então deve-se tomar muito cuidado para não alterar demasiadamente as características originais da imagem (ALCAIM, 1999). O erro de quantização é definido como a diferença entre o sinal que entra e o sinal que sai do quantizador. Uma quantização menos precisa é mais rápida, e reduz o número de bits a ser enviado, porem aumentam o erro de quantização, aumentando também a degradação da imagem. Considerando que um vídeo é uma seqüência de imagens no tempo, estas organizadas em três tipos de quadro intraquadro (tipo I), preditivo (tipo P) e bidirecional (tipo B). Um quadro I, ou intra-quadro, é um quadro auto-contido que pode ser independentemente decodificado, sem qualquer referência a outras imagens. Este tipo de quadro só tem codificação espacial e não depende de outros quadros para ser codificado, não existindo compensação e predição de movimentos. A primeira imagem numa seqüência de vídeo é sempre um quadro I. O primeiro quadro de uma GOP, do tipo I, é intra codificado. Um pixel de um quadro intracodificado utiliza outros pixels da sua vizinhança para ser representado de forma mais econômica (gastando menos bits) e depois são codificados (RICHARDSON, 2003). Os quadros I são necessários como pontos de partida para novas exibições ou pontos de resincronização, caso o fluxo de bit transmitido esteja danificado. Podem ser utilizados os quadros I para

implementar funções como avanço rápido, rebobinar e outras de acessos aleatórios para monitoramento de áreas de segurança (HARWOOD, 2008). O encoder de vídeo comum pode inserir automaticamente quadros I a intervalos regulares, ou sob demanda, se houver a previsão de que novos clientes que queiram compartilhar o fluxo (DAMJANOVSKI, 2005). Desse modo, os quadros I devem consumir muitos bits e aumentar a largura de banda necessária para transmissão dos dados. O quadro P, isto é quadro preditivo, faz referências às partes dos quadros I e/ou P anteriores, necessários para codificação de quadro. O quadro B, bidirecional, faz referências às partes dos quadros I e/ou P anteriores ou posteriores. A Figura 4, abaixo apresenta uma seqüência dos quadros: Figura 4 Quadros de Vídeo I, B, P 3 H.264: PARÂMETROS RELEVANTES A recomendação da União Internacional de Telecomunicações H.264 foi desenvolvida pelo Moving Picture Experts Group and the Video Coding Experts Group (MPEG/VCEG), em 2003, com títuloadvanced Video Coding for Generic Audiovisual Services (AVC) (RICHARDSON, 2003). Essa recomendação também foi conhecida com a parte 10 do MPEG-4. O formato H.264 possui sete perfis, cada qual tendo como meta uma classe especifica de aplicações. Cada perfil define que conjunto de recursos que o encoder pode utilizar e limita a complexidade de implementação do decoder. A Figura 5, a seguir, apresenta o diagrama em blocos do encoder H.264.

Figura 5 Encoder H.264 Ainda assim, o H.264 possui 11 níveis ou graus de capacidade para limitar os requisitos de desempenho, largura de banda e memória. Cada nível define a taxa de bit, taxa de codificação e macro-blocos por segundo para a resolução desejada. Quanto mais alta for a resolução, maior será o nível necessário (RICHARDSON, 2003). Nesse caso, dependendo de um perfil, o decoder poderá usar diferentes tipos de quadros, tais como quadros I, quadros P e quadros B. O decoder pode ser avaliado na Figura 6: Figura 6 Decoder H.264 A estrutura do H.264 é muito semelhante a dos seus antecessores, como o MPEG-2, como pode ser visto na figura 7, que representa os principais blocos de um codificador H.264.

Figura 7 - Diagrama de blocos para a codificação de um macrobloco. Com relação à composição dos quadros, os quadros P requerem menos bits que os quadros I, mas possuem a desvantagem de serem muito sensíveis a erros de transmissão, em razão de sua complexa dependência pelos quadros de referência e anteriores (2). Para correção desses problemas, o encoder H.264 utiliza apenas os quadros I e P. Trata-se de um perfil razoável para câmeras de rede e encoders de vídeo, uma vez que esse método pode proporcionar baixa latência, pois os quadros B não são utilizados com tanta freqüência (RICHARDSON, 2003). O formato H.264 pode elevar a compactação de vídeo com a introdução de um esquema intrapredição e codificação de quadros I. Este método reduz o tamanho de bits de um quadro I e mantém alta qualidade, por permitir a sucessiva previsão de blocos de pixels menores dentro de cada macrobloco de um quadro (MANOEL, 2007). Isso é feito tentando-se encontrar pixels associados aos pixels anteriores codificados, que delimitem um novo bloco de pixels 4x4 a ser intra-codificado (RICHARDSON, 2003). Esse método é obtido pela transformada de Hadamard ilustrado na Figura 8 e Figura 9 a seguir:

Figura 8 Transformada Hadamard no padrão H.264. Figura 9 Transformada Hadamard no padrão H.264. A compensação de movimento é outro aspecto relevante e, no caso do H.264, a compensação de movimento é feita está baseada nos blocos, sendo utilizada a codificação de quadros P e B (RICHARDSON, 2003). O encoder H.264 pode selecionar blocos com pixels associados, variando o tamanho e a forma do bloco. Nas áreas em que não se encontram blocos associados no quadro de referência, utilizam-se os macro-blocos intra-codificados (RICHARDSON, 2003). No H.264 ainda foram introduzidos dois novos tipos de quadros: os quadros do tipo SI e do tipo SP. Os quadros do segundo tipo tem a quantização da predição temporal realizada no domínio da freqüência. Quadros SP em casos onde a predição temporal não pode ser utilizada para evitar erros. Depois de feitas as predições, todos os quadros sem exceção são quantizados e compactados. Diversas técnicas de compactação são aplicadas, podendo, inclusive, ser utilizada mais de uma e mais de uma vez (SCHAFER, et al.2003). 3 CONCLUSÕES A recomendação H.264 apresenta técnicas que permitem uma eficiente e segura compactação de sinais de vídeo digitais. Esse método possui uma capacidade de previsão de quadros rápida, assim

como uma robusta blindagem aos erros de transmissão. Nesse sentido, o padrão oferece novas possibilidades de criação encoders de vídeo mais eficientes, capazes de permitir um fluxo de dados de melhor qualidade de imagem, elevadas taxas de quadros e melhor resolução. O H.264 reincorporou uma série de recursos que haviam sidos retirados do H.261 por necessitarem de muito recurso computacional e ainda inclui outras ferramentas, novas, capazes de aumentar muito o nível de compressão de uma seqüência de vídeo, se tornando muito superior aos codificadores que o antecederam e atualmente o mais eficiente. Dentre as mudanças e principais recursos destaca-se a compensação de movimento muito mais eficiente em comparação com os codificadores que o antecederam, utilizando até 32 quadros de referência. Este recurso oferece um ganho na compressão do vídeo, embora não seja adequado o seu uso em seqüências com movimentos muito rápidos e em seqüências que tenham pouca relação entre os seus quadros. O tamanho dos blocos utilizados para compensação de movimento pode ser escolhido, variando desde 4 x 4 até 16 x 16, permitindo uma acuricidade surpreendente para a predição de movimentos. A precisão desta ainda foi melhorada para ¼ de pixel, tornando-se ainda mais preciso. O filtro anti-blocos é outro artifício retirado dos codificadores que agora foi reincorporado, oferecendo uma qualidade muito superior aos vídeos codificados em baixas taxas de bits. Outro aspecto relevante é uma maior proteção contra erros com recursos como reordenação de blocos, o envio de alguns quadros extra (normalmente em taxas mais baixas) entre outros. Estes e outros recursos dão ao H.264 a possibilidade se ser utilizado para muitos fins, sendo robusto a erros e oferecendo a mesma qualidade de vídeo utilizando taxas de bits muito menores.

REFERÊNCIAS DAMJANOVSKI, Vlado. CCTV Networking and Digital Technology. London: Elsevier Butterworth Heinemann, 2005. HARWOOD, Emily. Digital CCTV: A Security Professional s Guide Elsevier Butterworth Heinemann, 2008. MANOEL, Edson T. M. UNIVERSIDADE FEDERAL DE SANTA CATARINA, Codificação de Vídeo H.264, 2007. Tese (Mestrado) PROAXIS, John G. Digital Communications. McGraw-Hill, 2001. RICHARDSON, Iain E. G. H.264 and MPEG-4 Video Compression for Next Generation. London: Wiley & Sons Ltd. 2003. SCHAFER, Ralf; WIEGAND, Thomas; SCHWARZ, Heiko. The Emerging H.264/AVC Standard. 2003.