televisão digitaltelevisão digital mpeg-2 video -...
TRANSCRIPT
21-Jan-20001
Instituto de Telecomunicações
Televisão DigitalTelevisão Digital
MPEG-2 Video
Pedro A. Amado Assunção
Instituto de Telecomunicações - Pólo de Coimbra
Instituto Politécnico de Leiria - ESTG
21-Jan-20002
Instituto de Telecomunicações
SumárioSumário
❑ Introdução.
❑ Características principais da norma MPEG-2.
❑ Compressão de vídeo: princípios básicos.
❑ Codificação / Descodificação em MPEG-2.
❑ Modos escaláveis em MPEG-2 - aplicações.
❑ Considerações finais.
21-Jan-20003
Instituto de Telecomunicações
IntroduçãoIntrodução
❑ MPEG!Moving Picture Experts Group
❑ Norma MPEG-2 (ISO/IEC 13818; ITU-T Rec. H.262)!Constituída por 3 partes fundamentais
❑ MPEG-2 Systems (ISO/IEC 13818-1)!Define a estrutura de multiplexagem entre áudio, vídeo e dados, assim
como a sincronização entre codificador e descodificador
❑ MPEG-2 Video (ISO/IEC 13818-2)!Define o sinal de vídeo comprimido
❑ MPEG-2 Audio (ISO/IEC 13818-3)!Define o sinal de áudio comprimido
21-Jan-20004
Instituto de Telecomunicações
MPEG-2: Systems, Video, AudioMPEG-2: Systems, Video, Audio
❑ Diagrama funcional Aplicações
PS
Mux
TS
Mux
VideoEncoder
Audio
Encoder
PacketizerVideo PES
Audio PES
Video
Data
Audio
Data
Program
Stream
Transport
Stream
Extent of Systems Specification
Packetizer
21-Jan-20005
Instituto de Telecomunicações
MPEG-2: Pilha protocolarMPEG-2: Pilha protocolar
21-Jan-20006
Instituto de Telecomunicações
A norma MPEG-2 VideoA norma MPEG-2 Video
❑ Define a sintaxe e semântica de um bitstream de vídeocomprimido.
❑ Apenas especifica a estrutura de um bitstream compatível coma norma e a forma de obter as imagens - processo dedescodificação.
❑ Não especifica os algoritmos de codificação - um codificadorMPEG-2 utiliza algoritmos e técnicas definidas pelo fabricantee não definidas pela norma - a única restrição é o bitstreamresultante ser compatível com a norma.
❑ Os fabricantes podem construir codificadores compatíveis coma norma, embora com características muito diferentes uns dosoutros.
21-Jan-20007
Instituto de Telecomunicações
Profiles / LevelsProfiles / Levels
❑ Profiles
!Definem subconjuntos da sintaxe global que implicam níveis decomplexidade diferentes nos algoritmos de codificação / descodificação -os modos escaláveis correspondem a diferentes Profiles.
❑ Levels
!Definem restrições de alguns parâmetros dos bitstreams - umdeterminado Level corresponde a determinadas valores máximos deresolução espacial, temporal e bit rate.
21-Jan-20008
Instituto de Telecomunicações
Profiles / LevelsProfiles / Levels
21-Jan-20009
Instituto de Telecomunicações
Estrutura do sinal de vídeoEstrutura do sinal de vídeo
❑ O sinal de vídeo é estruturado de forma hierárquica, em umelemento de um determinado nível contém vários elementos donível imediatamente abaixo.
! Sequence - (Ex:um filme)
! GoP: Group of Pictures - (Ex: um grupo de 15 imagens consecutivas)
! Picture: field, frame - (um campo ou uma imagem completa)
! Slice - (Ex: um conjunto de MBs na mesma linha horizontal)
! Macroblock - (Ex: 3 blocos - Y:16x16; U:8x8; V:8x8)
! Block - (Ex: um bloco 8x8 pontos de luminância)
! Pixel - (Ex: um ponto de luminância)
21-Jan-200010
Instituto de Telecomunicações
Compressão de vídeoCompressão de vídeo
❑ OBJECTIVO:
! Reduzir a largura de banda e/ou capacidade de armazenamento.
❑ EXEMPLO:
! Sinal de Televisão com resolução 720x576, 25 imagens/seg., formato
4:2:0 -- 124 Mbits/seg.
! Usando compressão pode ser transmitido a 4 Mbits/seg.
❑ INCONVENIENTE:
! O processo de compressão introduz distorção no sinal - pode ser
imperceptível para a maioria dos observadores !
21-Jan-200011
Instituto de Telecomunicações
Como se obtém a compressão do sinal ?Como se obtém a compressão do sinal ?
❑ Eliminando a REDUNDÂNCIA ESPACIAL (de uma imagem
individual), e a REDUNDÂNCIA TEMPORAL (entre imagens
consecutivas) dos sinais de vídeo.
❑ Retirando do sinal de vídeo as COMPONENTES
IRRELEVANTES para o sistema visual humano.
❑ Representando com MENOS BITS os elementos com MAIOR
PROBABILIDADE de ocorrência.
21-Jan-200012
Instituto de Telecomunicações
Principais técnicas de codificaçãoPrincipais técnicas de codificação
❑ Redundância espacial
! Transformada de coseno (DCT)
❑ Redundância temporal
! Estimação de movimento
❑ Componentes irrelevantes
! Quantização
❑ Componentes com diferentes probabilidades
! Códigos de comprimento variável (VLC)
21-Jan-200013
Instituto de Telecomunicações
Codificadores híbridosCodificadores híbridos
IntraframeNão tem
dependência temporal
InterframeDependência temporal
anterior e posterior
Classificação
Predição simplesusa uma só imagem
de referência
Predição compostausa duas imagens
de referência
TransformadaQuantização
VLC
Estimação / Compensação de movimentoTransformadaQuantização
VLC
21-Jan-200014
Instituto de Telecomunicações
Transformada DCTTransformada DCT
❑ Transforma um bloco de 8x8=64 pontos (correlacionados) da
imagem num bloco de de 8x8=64 coeficientes não
correlacionados.
!P: Pontos de uma imagem (correlacionados).
!C: Coeficientes da DCT (não correlacionados).
!T: Matriz da Transformada.
88888888 ×××× = TPTC T
21-Jan-200015
Instituto de Telecomunicações
QuantizaçãoQuantização
❑ Consiste basicamente numa divisão inteira efectuada entre oscoeficientes resultantes da DCT e o passo de quantização.
! Implica perda de precisão nos coeficientes, constituindo a principalfonte de distorção no processo de codificação.
! O número total de valores diferentes passa a ser finito e limitado a umagama reduzida - após quantização muitos coeficientes são nulos
∆= x
Qy int
21-Jan-200016
Instituto de Telecomunicações
Codificação com VLCCodificação com VLC
❑ Varrimento do bloco 8x8 de coeficientes DCT após quantização
❑ Agrupar os coeficientes em símbolos <run, length>
❑ Codificar e inserir no bitstream
! Símbolos com maior probabilidade de ocorrência são representados porcódigos curtos (poucos bits).
! Símbolos com menor probabilidade de ocorrência são representados porcódigos mais compridos (mais bits).
❑ A norma define tabelas VLC - não necessitam de sertransmitidas do codificador para descodificador.
21-Jan-200017
Instituto de Telecomunicações
Tipos de varrimento usadosTipos de varrimento usados
❑ Um símbolo ou par <run, level> consiste no número de zeros(run) que antecedem um coeficiente não nulo (level).
! a) Zig-Zag Scan; b) Alternate Scan
21-Jan-200018
Instituto de Telecomunicações
Estimação/compensação de movimentoEstimação/compensação de movimento
~,
^
21-Jan-200019
Instituto de Telecomunicações
Estimação/compensação de movimentoEstimação/compensação de movimento
21-Jan-200020
Instituto de Telecomunicações
Imagens do tipo IImagens do tipo I
❑ Codificadas em modo intraframe
! São codificadas com DCT, Quantização e VLC (semelhante ao JPEG).
! São codificadas/descodificadas de modo independente.
! São usadas como imagens de referência para as do tipo P e B.
! A primeira imagem de um GoP é do tipo I.
! São usadas como pontos de acesso aleatório para começar a
descodificar um bitstream a meio (por ex: ao ligar a TV), para edição de
vídeo comprimido e para sincronização após erros de transmissão.
! Um erro ocorrido numa imagem I propaga-se por todas as imagens
desse GoP pois as imagens seguintes (do tipo P e B) são descodificadas
com base nas anteriores.
21-Jan-200021
Instituto de Telecomunicações
Imagens do tipo PImagens do tipo P
❑ Codificadas usando predição simples
! Usam estimação/compensação de movimento baseado na imagem
anterior do tipo I ou P.
! Em termos genéricos pode-se dizer que a informação transmitida
correspondente a uma imagem P consiste na diferença entre a imagem
a codificar (imagem actual) e a imagem de referência anterior (a última
do tipo I ou P).
! Não podem ser codificadas/descodificadas de modo independente pois
necessitam da imagem de referência anterior - não se pode iniciar a
descodificação de um bitstream numa imagem P.
! São usadas como imagens de referência para as do tipo P e B.
21-Jan-200022
Instituto de Telecomunicações
Imagens do tipo BImagens do tipo B
❑ Codificadas usando predição composta - interpolação
! Usam estimação/compensação de movimento baseada em duas
imagens de referência - na anterior do tipo I ou P e na seguinte do tipo I
ou P.
! Não são usadas como imagens de referência para as outras.
! A dependência temporal de imagens futuras implica reordenação da
sequência original das imagens.
➫ Sequência de entrada (aquisição) e saída (visualização):
➫ 1, 2, 3, 4, 5, 6, 7, ... (I B B P B B P)
➫ Sequência de codificação, transmissão e descodificação:
➫ 1, 4, 2, 3, 7, 5, 6 ... (I P B B P B B)
21-Jan-200023
Instituto de Telecomunicações
Imagens do tipo I, P e BImagens do tipo I, P e B
I PB PB B B B
Interpolação Bidireccional
Predição
21-Jan-200024
Instituto de Telecomunicações
Diagrama de um codificadorDiagrama de um codificador
~
~
,
o
21-Jan-200025
Instituto de Telecomunicações
Diagrama de um descodificadorDiagrama de um descodificador
~
o
21-Jan-200026
Instituto de Telecomunicações
Flexibilidade na codificaçãoFlexibilidade na codificação
❑ A norma não define estrutura de cada GoP - tipos de imagens.
❑ A norma não define a divisão das imagens em slices.
❑ Cada MB pode ser codificado em modos diferentesdependendo do tipo de imagem a que pertence - a decisão cabeao algoritmo que o fabricante implementa.
❑ O codificador para ser compatível com a norma não necessitade implementar todas os modos de codificação possíveis.
❑ A norma não define como se controla a taxa de transmissãoque pode ser variável (VBR) ou constante (CBR).
21-Jan-200027
Instituto de Telecomunicações
Transmissão CBRTransmissão CBR
❑ O número de bits gerado por cada imagem é variável.
❑ A adaptação da taxa variável do codificador ao canal com taxade transmissão constante é feita através de um buffer.
❑ O codificador tem de garantir que o buffer nunca fica cheionem vazio controlando o passo de quantização de acordo coma ocupação do buffer - o algoritmo de controlo influenciafortemente a qualidade das imagens obtidas.
CODER DECODER
Camera
25Hz
R bits/sCamera
25HzBuffer Buffer
Feedback
Network
21-Jan-200028
Instituto de Telecomunicações
Modos de codificação escaláveisModos de codificação escaláveis
❑ O sinal de vídeo é codificado de forma hierárquica, em váriascamadas.
❑ As camadas correspondem a bitstreams que podem sertransmitidos em canais diferentes.
❑ Apenas a camada base (base layer) pode ser descodificadaindependentemente das outras - as camadas superioresdependem das inferiores.
❑ Diversos parâmetros de qualidade do sinal são incrementadosquando se descodificam as camadas superiores:
! relação sinal/ruído; resolução espacial, resolução temporal.
21-Jan-200029
Instituto de Telecomunicações
Princípio da codificação multicamadaPrincípio da codificação multicamada
❑ CODEC - COder-DECoder
Codec-1
Codec-b
Codec-2
Base Layer Layer 1 Layer 2
Base Layer
Layer 2
Layer 1
Video descodificadoVideo in
Bitstreams
21-Jan-200030
Instituto de Telecomunicações
Modos escaláveis em MPEG-2Modos escaláveis em MPEG-2
❑ Data Partitioning
! O sinal é dividido no domínio da frequência.
❑ SNR Scalability
! O sinal é dividido em vários níveis de SNR.
❑ Spatial Scalability
! O sinal é dividido em várias resoluções espaciais.
❑ Temporal Scalability
! O sinal é dividido em diferentes resoluções temporais.
❑ Hybrid Scalability
! Combinações de alguns dos modos anteriores (3 camadas).
21-Jan-200031
Instituto de Telecomunicações
Data Partitioning - coderData Partitioning - coder
❑ Pode ser implementado como pós-processamento.
❑ Controlo dinâmico da largura de banda de cada partição.
❑ Introduz poucos bits adicionais.
❑ Pouco eficiente em termos de qualidade / largura de banda.
~
~
~,
,
21-Jan-200032
Instituto de Telecomunicações
Data Partitioning - decoderData Partitioning - decoder
❑ Poder ser descodificada apenas a partição 0.
❑ Os dados da partição 1 em falta podem ser substituídos porzeros.
,
,~
~
21-Jan-200033
Instituto de Telecomunicações
SNR Scalability - codecSNR Scalability - codec
Resoluções espacial/temporal iguais em ambas as camadas.
Camada 1 codifica o erro de codificação da camada 0.
21-Jan-200034
Instituto de Telecomunicações
Spatial Scalability - coderSpatial Scalability - coder
Camada 1
Camada 0
21-Jan-200035
Instituto de Telecomunicações
Spatial Scalability - decoderSpatial Scalability - decoder
~, o
,~
~, o
21-Jan-200036
Instituto de Telecomunicações
Temporal Scalability - codecTemporal Scalability - codec
21-Jan-200037
Instituto de Telecomunicações
Hybrid ScalabilityHybrid Scalability
❑ Ex:Codec com escalabilidade espacial e temporal (TV & HDTV)
TemporalDemux.
SpatialDecimator
Spatial ScalabilityEncoder
TemporalEnhancement Encoder
In
TemporalEnhancement Decoder
Spatial ScalabilityDecoder
TemporalMux.
Out_0
Out_1
Out_2
b0
b1
b2
21-Jan-200038
Instituto de Telecomunicações
Aplicações de sistemas escaláveisAplicações de sistemas escaláveis
❑ Possibilidade de escolha de QoS em VoD.
❑ Controlo de tráfego em redes multimédia.
❑ Vídeo através da Internet.
❑ Comunicações multimédia em redes móveis.
❑ Pesquisa de bases de dados multimédia.
❑ Transmissão em redes heterogéneas.
❑ Migração para HDTV e TV 3D.
❑ Co-existência de normas diferentes.
21-Jan-200039
Instituto de Telecomunicações
Considerações finaisConsiderações finais
❑ O ajuste de parâmetros de codificação exige que se conheça oprocesso de codificação do sinal de vídeo.
❑ O desempenho (qualidade do vídeo / bit rate) de umcodificador depende de muitos factores que a norma nãodefine - por exemplo, algoritmos de controlo de bit rate e pré-processamento.
❑ O armazenamento e edição de vídeo tem de ser feito em vídeode elevada qualidade - a codificação sucessiva do mesmo sinalleva a uma distorção crescente.
❑ Os erros de transmissão propagam-se por várias imagens.