Técnicas de Compressão Vídeo Joaquim Macedo Universidade do Minho.
-
Upload
isaac-henriques-lemos -
Category
Documents
-
view
217 -
download
0
Transcript of Técnicas de Compressão Vídeo Joaquim Macedo Universidade do Minho.
Técnicas de Compressão Vídeo
Joaquim MacedoUniversidade do Minho
Material Utilizado Acetatos do livro Multimedia
Signals and Systems (Kluwer Academic) de Mrinal Mandal
Necessidade de Compressão Vídeo Televisão de Alta Definição (HDTV)
1920x1080 30 quadros por segundo (movimento total) 8 bits cada uma das três cores primáriasTotal 1.5 Gb/seg!
Cada canal cabo usa 6 MHz Max débito de dados de 19.2 Mb/seg Reduzido para 18 Mb/seg c/audio + control …Relação de compressão tem que ser 83:1!
Princípios de Compressão de Vídeo Um vídeo pode ser considerado um função tri-
dimensional de intensidade de luz I(x,y,t) A amplitude da função em qq coordenada
espacial (x,y) dá o brilho da imagem nessa coordenada num instante de tempo
Imagem mocromática I(x,y,t) Imagem a cores (R(x,y,t), B(x,y,t), G(x,y,t)) No vídeo digital x,y,t são discretos
Princípios de Compressão de Vídeo Como o vídeo é uma sequência de
imagens ordenada no tempo As técnicas de compressão de imagens
podem ser aplicadas Explorar as redundâncias estatística, espacial,
estrutural e psico-visual Para além disso, o vídeo tem a redundância
temporal e de conhecimento que podem ser exploradas para se conseguir melhor desempenho
Redundâncias no vídeo Temporal Conhecimento Psico-Visual
Redundância Temporal Tirar partido da similaridade entre quadros sucessivos Esta redundância entre quadros é removida explorando
técnicas de estimação e compensação de movimento
950 951 952
Redundância de conhecimento Quando um vídeo tem utilização limitada e
se pode associar um conhecimento comum Pode-se conseguir compressão eficiente Ex. Chamada Videofone
A imagem das pessoas não muda durante a chamada Há pequenos movimentos de corpo e mudanças de
expressão facial Se se enviar inicialmente a imagem das pessoas
Ir enviando os movimentos Mudanças de expressão Pode-se conseguir uma boa compressão
Redundância Psico-Visual Há vários tipos
SVH é pouco sensível aos componentes de cor Os componentes de cor podem ser quantizados
mais grosseiramente que os de luminosidade Quando vemos um vídeo de boa qualidade
Se pararmos a imagem não nos parece tão boa SVH é menos sensível aos objectos em rápido
movimento Regiões em rápido movimento podem ser quantizadas
mais grosseiramente
Objecto da sessão Estudo de técnicas de redução
para Redundância temporal Redundância da cor
As outras redundâncias Não estão dentro do âmbito
Vídeo Digital e Redundância da Cor As câmaras de vídeo usam tipicamente o espaço
de cores {R,G,B} para representar vídeo a cores Assuma que a câmara de vídeo produz sinais com
correcção Gama {Rn,Gn,Bn} normalizados para referência branco
Os componentes de luminância e crominância são gerados pela combinação linear de {Rn,Gn,Bn}
O espaço de cores {R,G,B} não é eficiente para compressão
Para transmissão os canais {R,G,B} são convertidos para um sinal de luminância e dois sinais de crominância
Codificação de Cores Imagem representada por pixel de 24 bits
pixel (8 bpp)Cada valor de cor entre 0 e 255
O vídeo usa codificação não linearDistribuição uniforme de cores para códigosRGB R’G’B’ (RGB com gamma corrigido)
Video usa a luminância/crominânciaR’G’B’ Y’CBCRLuminância é Y (tecnicamente luma é Y’)Crominância é is CBCR
Modelo de Cores YCbCr
BGRY 114.0587.0299.0
16219 YYd
128886.0
)(112
YBCB
128701.0
)(112
YRCR
Gama dinâmica = [16,235]
Gama dinâmica = [16,240]
Gama dinâmica = [16,240]
4:4:4 --> Sem sub-amostragem do chroma, cada pixel tem valores Y, Cr e Cb. 4:2:2 --> Sub-amostragem horizontaldos sinais Cr,Cb por um factor de 2 4:1:1 --> Sub-amostragem horizontal por um factor de 44:2:0 --> Sub-amostragem tanto na dimensão vertical como horizontal por um factor de 2
4:1:1 e 4:2:0 são usados principalmente no JPEG e MPEG
Sub-amostragem do Chroma
Sub-amostragem do Chroma4:4:4 4:2:2
4:1:1 4:2:0
4:2:0
(a)
(c)
(b)
(d)
(e)
Pixels with Y, ,
4:4:4 4:2:2
4:1:1 4:2:0
4:2:0
(a)
(c)
(b)
(d)
(e)
Pixels com valores Y, Cr, Ch, ,
Pixels apenas com o valor YPixels com Cr e Ch
Exemplo 9.1 Determine a redução na taxa de bits
devido à sub-amostragem 4:2:2 e 4:2:0 Assuma que há N pixéis de cor no vídeo.
Quando não há sub-amostragem há 3N bytes de tamanho ( 8 bits de resolução em cada canal de cor)Com sub-amostragem 4:2:2 teremos N amostras de Y, N/2 Cr e N/2 Cb. Isto conduz a N+N/2+N/2= 2N bytesCom sub-amostragem 4:2:0 teremos N amostras de Y, N/4 de Cr e N/4 Cb. Termos N+N/4+N/4=1.5 N bytesA sub-amostragem 4:2:2 reduz 33% e a 4:2:0 reduz 50%
Normas CCIR para Video Digital
CCIR 601525/60NTSC
CCIR 601625/50PAL/SECAM
CIF QCIF
Resolução da luminância
720 x 480 720 x 576 352 x 288
176 x 144
Resolução da crominância
360 x 480 360 x 576 176 x 144
88 x 72
Sub-amostragem de cor
4:2:2 4:2:2 4:2:0 4:2:0
Campos/seg 60 50 30 30Entrelaçamento Sim Sim Não Não
(CCIR -- Consultative Committee for International Radio)
Porquê a Compressão ?
O vídeo digital em bruto necessita duma compactação massiva (mais que 60:1 de relação de compressão)Utlizaremos três métodos para consegui-la: 1. Codificação de menor resolução para os canais de cor 2. Remoção da redundãncia temporal pela Compensação de Movimento 3. Remoção da Redundância espacial pelas técnicas de transformada de domínio
A 1920 x 1080, com 30 frames/sec (varrimento progressivo), teremos 1920 x 1080 x 30 = 62.2 milhões de pixels/segundo. Se Cada pixel usar 24 bits, a taxa de bits é 1.49Gb/s.
Redundância temporal no vídeo
Redução da Redundância Temporal
Exemplo
T=1 T=2
Predição
Captura
Codificaçãoda entropia
Descoficaçãoda entropia
DisplayPredição
É usado um modelo para prever o conteúdo do quadro; os parâmetros do modelo precisam de ser extraídos e enviados para o descodificador
Erro de predição
Par
âmet
ros
do
Mod
elo
Extração deparâmetros
Modelo Modelo
Motivação A maioria das diferenças entre quadros subsequentes numa cena típica são provocadas por movimentos de translação:
Movimentos ou Zooming da Camera e de objectos Variações de forma que tb parecem movimentos locais
Essas variações podem ser consideradas num modelo de predição:
Este modelo precisa de parâmetros que têm que ser estimados no codificador:
Compensação de Movimento
Estimação de Movimento
Técnicas de Estimação de Movimento Unificação por Bloco
A imagem é dividida em pequenos blocos Assume-se que cada bloco pertencem a um corpo
rígido e têm o mesmo movimento Menor precisão e maior complexidade
computacional Mais usada
Recursiva ao pixel Calcula-se o vector de movimento por pixel
Maior precisão mas maior complexidade computacional
Estimação/Compensação: A estimação e a compensação estão relacionadas e trabalham conjuntamente:
Estimação de Movimento (EM) tenta detectar movimento numa cena e extrai vectores de movimento para descrevê-la.
Compensação de Movimento (CM) é um modelo. Usa conjuntamente os vectores de movimento e outros quadros para gerar um predictor para o quadro corrente.
Os algoritmos EM/CM são baseados em blocos Os pixéis não são considerados separadamente São usados tipicamente blocos quadrados Algumas aplicações usam blocos de pixels de formas
arbitrárias
É removida a redundância uma vez que é necessário transmitir apenas os vectores de movimento
Os quadros são divididos em quadrados de tamanho fixo. A EM encontra para cada bloco do novo quadro M o previsor encontra a melhor previsão algures num quadro M conhecido:
O vector-de-movimento é o deslocamento entre as coordenadas dos blocos e a posição do melhor match.
Estimação de movimento
Quadro NQuadro M
Compensação de Movimento CM tenta prever um quadro de:
Um quadro já conhecido Os vectores de movimento fornecidos
adicionalmente Cada bloco é substituído por outro no quadro de
referência. O deslocamento entre o bloco e a sua previsão é determinado pelo vector de movimento. Quadro NQuadro M
Erro de Previsão
Estimação de movimento baseada em blocos Considere um pixel vídeo i(x,y,k)
(x,y) coordenada espacial k é o tempo O objectivo da EM é calcular o vector
de movimento d(x,y,k) Que permite reconstruir i(x,y,k) a partir
de i(x,y,k(+/-)p), p é um inteiro pequeno
Estimação de movimento por blocos A EM por blocos pressupõe
a imagem é composta por objectos rígidos
Os objectos movem-se vertical ou horizontalmente
É possível encontrar um vector d(x,y;k) tal que i(x,y;k)= i((x,y) –d(x,y;k),k-p)
Se houver zoom ou rotação a estimação não sucede.
Estimação de movimento por blocos Assume-se que o movimento é
homegéneo no tempo i.e Os objectos movem-se a velocidade constante
no plano da imagem I(x,y;k)=I((x,y)+d(x,y;k), k+p)
Num EMB espera-se a validade desses pressupostos para todos pixels do bloco b com o mesmo vector de deslocamento db. São satisfeitos se os blocos forem pequenos e
se a amostragem temporal for densa.
Estimação de movimento por blocos Cada quadro é dividido em blocos
KxL rectangulares e não sobrepostos
Cada bloco no quadro actual e unificado com um bloco no quadro anterior Determinar os deslocamentos
horizontais e verticais para esse bloco
Estimação de Movimento por Unificação de Bloco
L
K
L v 2
Ku
2
L
K
Área de busca
Vector de Movimento
Bloco de Referência
Quadro actual (t)
L v 2
Ku
2
Ku
2
Quadro prévio (t-1)
Critério de Unificação de Bloco
1
0
1
0
2
2),;,(
,),(min arg)ˆ,ˆ(
K
x
L
yDFD
vu
vuyxi
vuvu
vu
)1;,();,(),;,( kvyuxikyxivuyxiDFD
onde
Exemplo da Estimação de Movimento
Blocos da Imagem Prévia Blocos da imagem corrente
8 6 1 3 58 7 6 7 910 9 8 9 1113 12 12 16 1919 17 17 23 27
37 3943 44
43 4343 44
40 4142 43
43 4344 45
44 4547 48
43 4444 45
41 4243 44
47 4848 49
44 4645 47
40 4141 43
37 3943 44
43 4343 44
40 4142 43
43 4344 45
44 4547 48
43 4444 45
41 4243 44
47 4848 49
44 4645 47
37 3943 44
43 4343 44
40 4142 43
43 4344 45
44 4547 48
43 4444 45
41 4243 44
47 4848 49
44 4645 47
40 4141 4340 4141 43
Exemplo da Compensação de Movimento
8 6 1 3 58 7 6 7 9
10 9 8 9 1113 12 12 16 1919 17 17 23 27
40 4141 43
0 0-1 0 +MV(0,-2)40 41
41 4340 4141 43
0 0-1 0 +MV(0,-2)
ME com busca completa (1)Os algoritmos de busca completa, fazem uma busca exaustiva do quadro de referência para a melhor unificação da previsão A qualidade da unificação entre um bloco e o candidato para previsão pode ser medida com diferentes critérios:
Erro Médio Quadrático (MSE)
Soma das Diferenças Absolutas (SAD)
Classificação da diferença dos pixels (PDC) A previsão com a menor distância para o bloco previsto é
escolhido e as suas coordenadas relativas são codificadas como VM para o bloco
1
0
1
0
2),(),(W
i
H
jyxNM jNiNfjyixfD
1
0
1
0
),(),(W
i
H
jyxNM jNiNfjyixfD
ME com busca completa (2) A complexidade computacional para a EM duma imagem de tamanho X*Y que é dividida em blocos de tamanho W*H pode ser estimada da forma seguinte:
Cálculo o critério de unificação SAD para um candidato precisa de 2*W*H operações de adição.
Tem que considerar candidatos para todos blocos em X*Y
A busca completa tem que ser feita para todos (X/W)*(Y/W) blocos.
O número total de operações é :
For X=352 Y=288 temos C>10 GAdições/QuadroPara reduzir a complexidade:
A área de busca é limitada à vizinhança do bloco. EM é executada com base apenas na luminância
C = 2*(W*H)*(X*Y)*[(X/W)*(Y/W)] = (X^2)*(Y^2)
Avaliação para técnicas de EM Um algoritmo de EM é avaliado usando dois
factores A eficiência da CM
Gm= (Energia do bloco de imagem original)/ (Energia residual da CM) Se a compensação de movimento for adequada a energia
residual é pequena e o ganho é alto Complexidade Computacional
Deve ser pequena para facilitar a concretização para tempo real
É proporcional ao número de pontos testados pelo algoritmo para uma dada área de busca
Numa concretização hardware para tempo real o número de passos sequenciais necessários pode também ser importante porque a ME dos blocos individuais pode ser paralelizada
Exemplo 9.3 Calcule os VM correspondentes ao
quadro apresentado na figura 9.5(b), relativamente mostrada na figura 9.5(b) Assuma um tamanho de bloco 16x16 e
uma janela de busca [-16,16] tanto na direcção horizontal como vertical
Calcule o ganho da previsão de movimento e estime a complexidade da EM
Desempenho da CM
(a)Referência (b) Corrente (c)Diferença de Quadros
77 ,
Imagens de erro com unificação de Busca Completa
(d) Janela de Busca = (e) Janela de Busca = 1616 ,
VM para Busca Completa
Histograma dos VM
Hor. Motion
Vert. Motion Hor. Motion
Vert. Motion
Sequência de futebol
Algoritmos rápidos de EM No exemplo anterior viu-se que a complexidade da
EM para um quadro de vídeo de 240x352 pode ser superior a 100 MOP
Geralmente a complexidade do algoritmo de busca completa é muito grande da ordem de 8x ΔuXΔv
Foram propostas diversas técnicas para reduzir a complexidade da EM
A maioria destes algoritmos é baseada no pressuposto que o erro de previsão cresce monotonamente conforme a busca se move sem ser na direcção de distorção mínima
Os algoritmos são mais rápidos que o de busca completa mas menos precisos
Busca em 3 passos
Bloco com melhorUnificação
Busca Logarítmica 2-D
Bloco com melhorUnificação
Busca em Direcção Conjugada
Best Matched BlockBest Matched Block
Desempenho de MC Busca de 3 passos Busca de direcção conjugada
MPG MPG= 47.6 = 36.7
Vectores de Movimento
Exemplo 9.5
Imagem Real Imagem Estimada
Resultados
Imagem Real Imagem Estimada
Limitações da Busca Rápida A maioria dos algoritmos de busca rápida
Assumem um superfície de erro monótona onde há apenas um mínimo
Se este pressuposto for correcto todas técnicas encontram eventualmente esse mínimo
global Normalmente uma superfície de erro não é
estritamente monótona Nesse caso o algoritmo pode encontrar apenas um
mínimo local e fornecer apenas um desempenho sub-óptimo.
No sentido de evitar um mínimo local, os pontos de busca devem estar bem espalhados
Estimação de Movimento Bidireccional A estimação do movimento tem sido feita
com previsões para a frente O quadro corrente pode ser previsto do
quadro passado para satisfazer a casualidade Pode-se conseguir melhor desempenho com a
informação adicional de quadros futuros Para conseguí-lo temos que atrasar a EM alguns
quadros A maior parte das normas de codificação de vídeo
usam previsão baseada em quadros passados e futuros.
Estimação do Movimento dos componentes chroma Num vídeo a cores existem três
componentes de cor As técnicas de EM podem ser aplicadas
indivualmente a cada um dos componentes de cor Há uma forte correlação entre os VM dos
diferentes componentes É usado o VM do Y para CM dos componentes
Cr e Cb É necessário usar um factor de escala pelo facto dos
componentes Cr e Cb terem tamanho diferente do Y
Normas de Compressão Vídeo Motion JPEG MPEG-1 MPEG-2 MPEG-4 H.261 H.263,H.263+,H26L Comparação de Desempenho dos
Codecs
História dos Codecs
CODEC Vídeo Genérico
Motion-JPEG O codec não normalizado mais simples Usa o norma JPEG para imagens fixas para
cada quadro individualmente Como não há EM a complexidade do
algoritmo de codificação é muito pequena O desempenho de codificação não é muito
bom Não explora a correlação temporal entre os
quadros de vídeo Usado por muitas das primeiras aplicações de
vídeo
MPEG-1
Utiliza algoritmos de compressão eficientes para dados áudio e vídeo completamente sincronizadosAtinge um débito máximo de 1.5 Mb/segTem como objectivo:
Armazenamento de vídeo em CD-Rom e a sua transmissão sob os mais diversos tipos de média digital
Codificador de Vídeo MPEG-1
ReorderedInput VideoFrames
MotionEstimator
+ BlockDCT
BlockQuantizer VLC
Regulator
MUX
+Buffer
-
MotionCompensationPredictor
EncodedBitstream
+
BlockDequantizer
BlockIDCT
Motion Vectors
ReorderedInput VideoFrames
MotionEstimator
+ BlockDCT
BlockQuantizer VLC
Regulator
MUX
+BufferBuffer
-
MotionCompensationPredictor
MotionCompensationPredictor
EncodedBitstream
++
BlockDequantizer
BlockIDCT
Motion Vectors
Tipos de quadro MPEG Conflito entre acesso aleatório e taxa de
compressão! 3 categorias de quadros: I – quadros INTRA codificados que são
imagens auto contidas. Dão pontos de acesso na sequência Taxa de compressão moderadas
P – quadros PREVISTOS com base na diferença bloco-a-bloco com o quadro anterior. Baseados em macroblocos (16x16 (8x8) pixels no espaço de luminancia(crominância)).
B – quadros BI-DIRECTIONAIS que se baseiam na diferença entre o último e o próximo quadro. Não suportados por todas concretizações MPEG-1.
GOP (Grupo de Figuras) no MPEG
Time
1 2 3 4 5 6 7 8 9 10
I1 B1 B2 P1 B3 B4 B5 B6 I2P2
R RR R
Time
1 2 3 4 5 6 7 8 9 10
I1I1 B1B1 B2B2 P1P1 B3B3 B4B4 B5B5 B6B6 I2I2P2P2
RR RRRR RR
Descodificador Vídeo MPEG-1
ReconstructedFrames
VLC Decoderand
Demultiplexer
Motion Compensator
Predictor
Coded Bitstream Inverse
QuantizerInverseDCT +
Motion Predicted Frame
Motion Vectors
ReconstructedFrames
VLC Decoderand
Demultiplexer
VLC Decoderand
Demultiplexer
Motion Compensator
Predictor
Motion Compensator
Predictor
Coded Bitstream Inverse
QuantizerInverse
QuantizerInverseDCT
InverseDCT ++
Motion Predicted Frame
Motion Vectors
MPEG-2 Uma forma mais genérica de multiplexar áudio e vídeo. Define cadeias elementares (elementary streams), incluindo
áudio e vídeo mas também incluindo cadeias de dados que podem ser sincronizadas com áudio e vídeo como por exemplo sub-títulos.
Cada uma das cadeias é primeiro dividida em pacotes com etiquetas temporais. A saída do empacotador é uma Packetised Elementary Stream (PES).
As PES’s para áudio e vídeo são então multiplexadas conjuntamente para uma uma única saída a transmitir.
O program stream (PS) é usado para multiplexar conjuntamente cadeias elementares que tenham uma base de tempo comum e precisam de ser mostradas de forma sincronizada.
A cadeia de transporte (transport stream) é usada para multiplexar cadeias que não tenham uma base de tempo comum
MPEG-2 Permite débitos de 1.5 a 80 Mbit/seg É similar ao MPEG-1
inclui extensões para uma larga gama de aplicações Sintaxe para codificação eficiente de vídeo emtrelaçado Permite codidficação da crominância a 4:2:0, 4:2:2 e 4:4:4 10 bits DCT para previsão AC Tabelas VLC
Disponibiliza funcionalidades para Transmitir sinais multimédia multi-canal de alta qualidade
para difusão terreste, satélite ou redes de banda larga Suporta uma variedade de formatos de pacotes, correcção
de erros adequada para TV cabo e ligações satélite
MPEG-2 Outras funcionalidades importantes:
Extensões escaláveis que permitem a divisão dum sinal de vídeo continuo em 2 ou mais cadeias codificadas que representam o vídeo a diferentes
Resoluções (escalabilidade espacial) Qualidade da imagem (escalabilidade SNR) Taxas de imagens (escalabilidade temporal) O mesmo sinal pode servir para TV de alta
definição e TV normal
Codificador e Empacotador MPEG-2
VideoEncoder
Audio Encoder
Packetizer
Packetizer
PS
Mux
PS
Mux
VideoData
AudioData
ProgramStream
TransportStream
Video PES
AudioPES
VideoEncoder
Audio Encoder
Packetizer
Packetizer
PS
Mux
PS
Mux
VideoData
AudioData
ProgramStream
TransportStream
Video PES
AudioPES
Níveis e Perfis MPEG-2Níveis Simple
sPrincipal Escaláve
l SNREscalável espacial
Alto Perfil 4:2:2
Baixo 4:2:0352x2884 Mbit/s I,P,B
4:2:0352x2884 Mbit/s I,P,B
Principal
4:2:0720x75615 Mbit/s I,P
4:2:0720x75615 Mbit/s I,P,B
4:2:0720x75615 Mbit/s I,P,B
4:2:0,4:2:2720x75620 Mbit/s I,P,B
4:2:2720x75650 Mbit/s I,P,B
Alto 1440
4:2:01440x115260 Mbit/s I,P,B
4:2:01440x115260 Mbit/s I,P,B
4:2:0, 4:2:21440x115280 Mbit/s I,P,B
Alto 4:2:01920x115280 Mbit/s I,P,B
4:2:0,4:2:21920x1152100 Mbit/s I,P,B
Perfis e níveis MPEG-2
Nível Tamanho Pixels/seg
Débito (Mbits/s)
Aplicações
Baixo 352x288x30
3 M 4 Qualidade VHS
Prncipal 720x576x30
12 M 15 TV Estúdio
Alto 1440x1152x60
96 M 60 HDTV assinante
Muito Alto
1920x1152x60
128 M 80 Produção Filme
O MPEG-1 é usado apenas para armazenamento de vídeo a baixodébito
MPEG-4 MPEG-1 e MPEG-2
ME inter-quadro para remover redundância temporal
DCT para remover correlação espacial nos quadros de erro
Conseguem Bom desempenho de codificação relativamente a
Taxa de Bits e Qualidade subjectiva Maior desvantagem
Não disponibilizam funcionalidades de acesso ao conteúdo
MPEG-4 Definido mais recentemente
Disponibiliza: Técnicas para armazenamento,
transmissão e manipulação de Texturas naturais e sintetizadas Imagem e Vídeo em ambientes multimédia a
uma larga gama de débitos Centrado no AVO
AVO (Audio-Visual Object)
MPEG-4 “Orientado ao Objecto (OO)”
Mas: actuais concretizações são quadro total O cliente pode interagir com o conteúdo Escalabilidade baseada no conteúdo Reutilização de codificação Comportamento associado aos objectos
audio-visuais Mas: problemas de compatibilidade com
concretizações proprietárias do MPEG-4
Uma cena MPEG-4
Objectos Segmentados no MPEG-4
(a) (b)
(c) (d)
(a) (b)
(c) (d)
Mesh 2D-Animado Para além do código baseado em
objectos O MPEG-4 incorpora técnicas para
representar imagens sintéticas Usa o VRML para sintetizar vídeo
animado Modelação mesh 2-D para representar
imagens como a face humana
Rede 2D Animada
Correspondência da textura na rede Armazena os vértices da rede e os parâmetros de movimento
Estrutura das ferramentas para representar vídeo natural Os algoritmos para codificação de vídeo
e imagem do MPEG-4 Dão uma representação eficiente de
objectos visuais de forma arbitrária Suportam a maioria das funcionalidades do
MPEG-1 e MPEG-2 Compressão eficiente de sequências de imagens
rectangulares para vários Níveis de formatos de entrada,Taxa de Quadros,
Profundidade de pixel,Taxa de bits, Níveis de escalabilidade espacial, temporal e de qualidade
Funcionalidades convencionais baseados no conteúdo Compromisso entre débito de bits e
funcionalidades MPEG-4 a débito baixo é similar ao MPEG-
1/2 VOP (Video Object Picture) é codificada
com CM seguido da codificação da textura Para codificação de funcionalidades de
conteúdo com a sequência de vídeo a conter objectos de forma arbitraria
Codifica-se a forma e transparência
Codificador Vídeo MPEG-4DCT &
Quantizat ion
MotionEstimator
+
Entropy coding
MULTIPLEXER
IDCT &Dequantization
Frame Store
Shape Coding
+
+
Mot. Comp.Predictor
VOP orVideo
Coded Video
DCT &Quantizat ion
MotionEstimator
+
Entropy coding
MULTIPLEXER
IDCT &Dequantization
Frame Store
Shape Coding
+
+
Mot. Comp.PredictorMot. Comp.Predictor
VOP orVideo
Coded Video
Exemplo de codificação sprite duma sequência vídeo
(a)
(b) (c)
(a)
(b) (c)
Estrutura Lógica duma cena
Norma H.261 O MPEG-1 e MPEG-2 foram concebidos
para aplicações de propósito geral Para conseguir melhor desempenho os
codificadores são bastante mais complexos que os descodificadores
Esta abordagem é adequada quando há muito menos codificadores que descodificadores
Para videotelefone este pressuposto não é verdadeiro Tanto o codificador como o descodificador devem ser
baratos para tornar os produtos menos caros para os consumidores
H.261 Similar ao MPEG-1 Um codec vídeo para débitos video de {1-
30}x64 (px64, p de 1 a 30) kbps. Dois formatos de imagem diferentes: CIF e QCIF. Foi concebido para aplicações de video-
conferência e é suposto transportar vídeo sobre RDIS.
Optimiza a utilização de largura de banda estabelecendo um compromisso entre qualidade contra movimento
Imagens com rápidas mudanças têm pior qualidade que imagens quase estáticas
H.263 Versão melhorada do H.261.
Usa a mesma DCT e mesma técnica para MC Mesma qualidade com metade do débito
As diferenças principais são: Usa CM de meio pixel para reduzir a energia DFD Codificação de comprimento variável melhorada
(codificação aritmética como opção) Modos opcionais incluem VM sem restrições Modo de previsão de movimento avançado incluindo CM
de blocos sobrepostos. Um modo que combina previsão bidireccional com a
prévia (modo PB) Suporta uma larga gama de formatos de imagem
(4CIF,16 CIF)
H.263+ Melhoramentos adicionais sobre o H.263
para aumentar gama de aplicação Desempenho de compressão Aceita novos tipos de imagens
Imagens escaláveis Formatos do utilizador
Novos modos de codificação Codificação avançada intra-quadro Filtro para “deblocking” Selecção de imagens de referência
H.26L Em desenvolvimento pelos peritos do ITU Principal objectivo:Um algoritmo de codificação simples
para aumentar o desempenho da compressão Adicionalmente
Representação em pacotes de vídeo Amigável para a rede Orientada para aplicações interactivas (videotelefone)
e não interactivas (armazenamento, difusão,…) Disponibiliza uma camada de codificação vídeo (VCL)
Melhoria significativa na taxa de distorção Uma camada de rede para difusão de vídeo sobre um
tipo particular de rede Desenvolvida para transportar vídeo sobre RTP/IP
ou sistemas sem fios 3G
Desempenho das Normas CODEC O principal objectivo de qualquer
CODEC é bom desempenho de da codificação Têm diferente complexidade e
desempenho de codificação É dificil de comparar porque são usados
em contextos diferentes e o débito pretendido é diferente
Desempenho da Codificação Vídeo SIF
20
24
28
32
36
40
0 1 2
PS
NR
(in
dB)
M-JPEG MPEG2-I MPEG2-IP
Hallway
Table Tennis
Football
20
24
28
32
36
40
0 1 2
PS
NR
(in
dB)
M-JPEG MPEG2-I MPEG2-IP
Hallway
Table Tennis
Football
Desempenho da Codificação Vídeo CCIR
24
28
32
36
40
0 1 2
PSN
R (i
n dB
)
M-JPEG MPEG2-I MPEG2-IP
Hallway
Table Tennis
Football
M-JPEG MPEG2-I MPEG2-IP
Hallway
Table Tennis
Football
Vídeo Bream
MPEG-1 vs MPEG-4 a 1.1 Mbits/s
36
37
38
39
40
0 20 40 60 80Frame Index
PSNR
(in
dB)
MPEG-1MPEG-4
10
30
50
70
90
110
130
0 20 40 60 80Frame Index
Bitr
ate
(in k
bps)
MPEG-1MPEG-4
H.263 vs MPEG-4 a 1.1 Mbits/s
3536
373839
4041
0 20 40 60 80Frame Index
PSN
R (i
n dB
)
H.263MPEG-4
0
30
60
90
120
0 20 40 60 80Frame Index
Bitr
ate
(in k
bps)
H.263MPEG-4
H.263 vs MPEG-4 a 56 Kbits/s
29
31
33
35
0 4 8 12 16 20 24 28 32Frame Index
PSN
R (i
n dB
)
H.263MPEG-4
0
10
20
30
40
50
60
0 4 8 12 16 20 24 28 32Frame Index
Bitr
ate
(in k
bps) H.263
MPEG-4