Se a evolução da espé ie humana fosse
tão rápida omo a evolução te nológia,
seria o Mundo melhor? 2009
Luís Miguel
de Oliveira Matos
Estudo e apli ações da norma de odi ação de
2009
Luís Miguel
de Oliveira Matos
Estudo e apli ações da norma de odi ação de
vídeo H.264/AVC
Dissertaçãoapresentada àUniversidadede Aveiropara umprimentodos
re-quisitos ne essáriosàobtenção do grau de Mestre emEngenharia de
Com-putadores e Telemáti a, realizada sob a orientação ientí a do Professor
DoutorAntónio JoséRibeiroNeves,ProfessorAuxiliarConvidadodo
Depar-tamentodeEle tróni a,Tele omuni açõeseInformáti adaUniversidadede
Aveiro, e do ProfessorDoutor Armando José Formoso de Pinho, Professor
Asso iadodoDepartamentodeEle tróni a,Tele omuni açõeseInformáti a
presidente DoutoraAna Maria Perfeito Tomé
Professora Asso iadadaUniversidadedeAveiro
vogais Doutor Armando José Formoso de Pinho
ProfessorAsso iadodaUniversidadedeAveiro
Doutor Vítor Manuel de Jesus Filipe
ProfessorAuxiliar omAgregaçãodaUniversidadedeTrás-os-MonteseAltoDouro
Doutor António José Ribeiro Neves
Pinho,portodooempenhoeapoiodisponibilizadosaolongodaDissertação
de Mestrado. Sem a ajuda deles, seria impossível on luir um trabalho
desta omplexidade.
Aos doutores Alexis Tourapis, Gary Sullivan e Yung-Lyul Lee pelos
es lare- imentosforne idos, relativamenteàutilizaçãodosoftwarede referên iado
H.264/AVC (JM14.2).
Aos meus amigos e olegas que me ajudaram e apoiaram nos momentos
mais difí eis. Aos residentes do Blo o 12, por me terem animado sempre
que pre isava.
Por último, quero dedi ar este trabalho às pessoas mais importantes da
minha vida, a minha família. Os meus sin eros agrade imentos, aos meus
resumo A odi ação devídeo temsidoumadas áreasmaisexploradas nosúltimos
anos. Devido ao forte res imento te nológi o, prin ipalmente no número
deapli açõesdevídeodigital,torna-sene essáriodesenvolvernovasté ni as
de ompressão de vídeo/imagemmais robustase modernas, que permitam
satisfazer as ne essidades da a tual e da futura so iedade. A norma
H.264/AVC surgiu para satisfazerestas ne essidades.
Na parte ini ial desta dissertação, são des ritos alguns on eitos sobre
sinaisde vídeo, algumasté ni as de odi ação e asnormasde odi ação
de vídeo/imagem mais importantes. De seguida, é apresentado um estudo
da norma H.264/AVC om algum detalhe, onde são identi adasas
ara -terísti as prin ipais da norma e suas diferenças relativamente às prin ipais
norma de odi ação de vídeo maisantigas (MPEG-1, MPEG-2, MPEG-4,
H.261 e H.263). A parte práti a deste trabalho onsistiu na avaliação
e na omparação do desempenho do H.264/AVC om outras normas de
odi ação. Para poder usar as implementações de algumas normas de
odi ação, foi ne essário desenvolver algumas ferramentas de
manipu-laçãodevídeo,queseen ontramdes ritasnestapartepráti adadissertação.
Os resultadosobtidosnassimulaçõesmostramqueoH.264/AVC éanorma
om o melhor desempenho, independentemente do débito binárioutilizado
na odi ação omperdas(lossy). Relativamenteà odi açãosem perdas
(lossless), a norma H.264/AVC não propor iona os melhores resultados de
abstra t Video odinghasbeenoneofmostexploredareasinthe lastyears. Duethe
high te hnologygrowth,mainly in the numberof digitalvideoappli ations,
it is ne essary to develop new, more robust and modern video/image
ompressionte hniques,thatwillsatisfytheneeds ofthepresentandfuture
so iety. TheH.264/AVC standard emergedtofullltheseneeds.
Inthe rstpartofthis dissertation,wedes ribesomevideosignal on epts,
some oding te hniques and the most important video/image oding
standards. Then, it is presented a detailed study of the H.264/AVC
standard, where are identied the main features of the standard and
its main dieren es, omparatively to the oldest video oding standards
(MPEG-1, MPEG-2, MPEG-4, H.261 e H.263). The experimental part
of this work onsists in the evaluation and omparison of the H.264/AVC
performan e with other oding standards. To use some oding standards
implementations, it was ne essary to develop some manipulation video
tools,thataredes ribed in thelast partof thiswork.
The results obtained in the simulations show that the H.264/AVC is the
standard with the highest performan e, regardless of the bitrate used in
lossy oding. Forthe lossless oding, the H.264/AVC does not provide the
1 Introdução 1
1.1 Obje tivos . . . 2
1.2 Estrutura . . . 2
2 Con eitos de vídeo 3 2.1 Amostragem temporal/espa ial . . . 3
2.2 Constituintesde umasequên ia de vídeo . . . 4
2.3 Espaço de ores . . . 5
2.3.1 RGB . . . 6
2.3.2 YUV/YCbCr . . . 6
2.4 Formatos de vídeo . . . 9
2.5 Qualidade e omplexidadedo vídeo . . . 10
2.5.1 Qualidade . . . 10
2.5.2 Complexidade . . . 12
3 Con eitos bási os de odi ação de vídeo 13 3.1 Métodospredi tivos . . . 13
3.1.1 Predição espa ial . . . 15
3.1.2 Predição temporal ( ompensação de movimento) . . . 15
3.2 Métodosde transformação . . . 16
3.2.1 Transformadade Co-seno Dis reta(DCT) . . . 16
3.2.2 Quantização. . . 18
3.2.3 Varrimento zig-zag . . . 19
3.2.4 Codi ação deentropia . . . 20
4 Prin ipais normasde odi ação de vídeo e imagem 27 4.1 Codi ação devídeo . . . 27
4.1.2 H.263 . . . 28 4.1.3 MPEG-1. . . 29 4.1.4 MPEG-2. . . 29 4.1.5 MPEG-4. . . 30 4.2 Codi ação deimagem . . . 32 4.2.1 A norma JBIG . . . 32 4.2.2 A norma PNG . . . 33 4.2.3 A norma JPEG-LS . . . 34 4.2.4 A norma JPEG2000 . . . 35
5 Estudo da norma H.264/AVC 39 5.1 Estrutura doH.264/AVC . . . 39
5.1.1 Video CodingLayer (VCL) . . . 40
5.1.2 Sli es e sli e groups . . . 41
5.1.3 Predição espa ial(intra-frame) . . . 42
5.1.4 Predição temporal (inter-frame) . . . 46
5.1.5 Filtro anti-blo os adaptativo . . . 50
5.1.6 Codi adoresde entropia (CAVLC eCABAC) . . . 51
5.2 PersH.264/AVC. . . 54
5.3 Níveis H.264/AVC . . . 57
5.4 Prin ipais diferençasrelativamenteàsnormas anteriores . . . 58
6 Resultados experimentais 61 6.1 Sequên ias de vídeo utilizadas . . . 61
6.2 Codi adoresutilizados . . . 61
6.2.1 Implementaçõesdasnormas de odi ação devídeo ( odi ação lossy) . 64 6.2.2 Implementaçõesdasnormas de odi ação de imagem( odi ação los-sless) . . . 65
6.3 Ferramentas de vídeo desenvolvidas . . . 65
6.4 Resultados de ompressão devídeo om perdas (lossy) . . . 66
6.4.1 CAVLCvs CABAC . . . 66
6.4.2 Resultados maisgerais . . . 68
6.5 Resultados de ompressão devídeo sem perdas(lossless) . . . 72
A Video tools 79
A.1 Data Stru tures . . . 79
A.2 File List . . . 79
A.3 VideoCompare. FileReferen e . . . 80
A.3.1 Detailed Des ription . . . 80
A.3.2 Fun tionDo umentation . . . 80
A.4 VideoConverter. FileReferen e . . . 81
A.4.1 Detailed Des ription . . . 82
A.4.2 Enumeration Type Do umentation . . . 82
A.4.3 Fun tionDo umentation . . . 83
A.5 VideoEntropyCal ulator. File Referen e . . . 83
A.5.1 Detailed Des ription . . . 84
A.5.2 Dene Do umentation . . . 84
A.5.3 Fun tionDo umentation . . . 84
A.6 VideoFrameExtra tor. FileReferen e . . . 86
A.6.1 Detailed Des ription . . . 86
A.6.2 Fun tionDo umentation . . . 86
A.7 VideoShow. FileReferen e . . . 88
A.7.1 Detailed Des ription . . . 88
A.7.2 Fun tionDo umentation . . . 88
AAC Advan edAudioCoding
AFX Animation Framework eXtension
ASO ArbitrarySli e Ordering
ASP Advan edSimpleProle
ATM Asyn hronous Transfer Mode
AVC Adva edVideoCoding
AVOs Audio/VisualObje ts
BAC Binary Arithmeti Coding
BIFS BInaryFormat for S enes
BP BaselineProle
CABAC Contex-Adaptive BinaryArithmeti Coding
CALIC Context-Based, Adaptive, LosslessImageCoder
CAVLC Contex-Adaptive Variable-Lenght Coding
CA Contex-Adaptive
CELP Code Ex ited LinearPredi tion
CIF Common Intermediate Format
CMYK Cyan,Magenta, Yellow, and Key (bla k)
CMY Cyan,Magenta and Yellow
CREW Compression withReversible Embedded Wavelets
DCT Dis reteCosine Transform
DETI Departamento de Ele tróni a,Tele omuni ações e Informáti a
DMIF Delivery MultimediaIntegration Framework
DPCM Dierential Pulse Code Modulation
DP Data Partitioning
DVD Digital VideoDis ou Digital VersatileDis
EBCOT Embedded Blo kCodingwithOptimized Trun ation
FELICS FastE ient &LosslessImage Compression System
FMO FlexibleMa roblo kOrdering
FRExt FidelityRange Extensions
FTP FileTransportProto ol
GFX Graphi al Framework eXtension
HD HighDenition
HHR Horizontal HalfResolution
HP HighProle
HSL Hue,Saturation, Lightness/Luminan e
HSV Hue,Saturation, Value
Hi10P High10 Prole
Hi422P High4:2:2 Prole
Hi444P High4:4:4 Prole
IEC International Ele trote hni al Commission
IPMP Intelle tual PropertyManagement andProte tion
IP Internet Proto ol
ISDN IntegratedServi esDigital Network
ISO International Organization for Standardization
ITU-T International Tele ommuni ation Union- Tele ommuni ation
JBIG Joint Bi-LevelImageExpertsGroup
JPEG-LS Joint Photographi ExpertsGroup - LS
JVT JoinVideo Team
LASeR Lightweight Appli ation S eneRepresentation
LOCO-I LOsslessCOmpression for Images
MBAFF Ma roBlo k-Adaptive Frame/Field
MPEG Moving Pi ture Experts Group
MP MainProle
MSE MeanSquared Error
MSSG MPEGSoftwareSimulation Group
NAL NetworkAbstra tionLayer
OFFS Open Font Format Spe i ation
PGM Portable GrayMap
PNG Portable Network Graphi s
PPM Portable PixelMap
PSNR PeakSignal-to-Noise Ratio
PSTN Publi Swit hed Telephone Network
PVRG Portable Video Resear hGroup
Pi AFF Pi ture-Adaptive Frame-Field En oding
QCIF Quarter CommonIntermediateFormat
RGB Red,Green, Blue
RMSE Root Mean SquaredError
RS Redundant Sli es
RTI RealTime Interfa e
SD Standard Denition
SI Swit hing I
SMR Symboli Musi Representation
SPMG Signal Pro essing& MultimediaGroup
SP Swit hing P
UVLC UniversalVariableLength Coding
VCD Video CD
VCEG Video CodingExpertsGroup
VCL Video CodingLayer
VHS Video HomeSystem
VLC VariableLength Coding
WWW WorldWide Web
Introdução
Nos últimos anos, houve um res imento bastante a entuado no número de apli ações
de vídeo digital nas mais diversas áreas: omuni ações de vídeo, segurança e/ou vigilân ia,
indústriaeprin ipalmente entretenimento. Naáreadeentretenimento desta am-seatelevisão
digital,vídeo onferên ia, streamdevídeonaInternet,DVD-Vídeoemaisre entementeo
Blu-ray. Esteforte res imentorequerumaumentotantonopoder omputa ional omonalargura
de banda das redes sem os existentes. As velhas redes PSTN (Publi Swit hed Telephone
Network) já não têmlargura de banda su ientepara asapli ações de vídeo mais re entes e
estãoaentraremdesuso. Oinvestimentoemlarguradebandanasredessemosémuito aro
enãoé su iente parasuportartodasasapli açõesdevídeo digitala tuais. Aúni asolução é
desenvolverté ni asde ompressão devídeo maisrobustasqueusemmenos largurade banda
doque asté ni as anteriores, suportandoas apli açõesde vídeo maisre entes. Assim sendo,
osgrupos de investigação na área de odi ação de vídeo e algumas indústrias trabalharam
no sentido de ompensar este forte res imento riando novas té ni as de odi ação. Desta
uniãosurgiram algumasnormas om grandesu esso, tais omo o MPEG-1, MPEG-2, H.261
e o H.263 (H.263+ e H.263++). O MPEG-2 foi o odi ador de vídeo usado na televisão
digital e no Vídeo-DVD ao longo dos últimos anos. Apesar de ter sido um grande su esso,
este odi ador já se en ontra um pou o ultrapassado. Neste momento, om os avanços
te nológi os no poder de pro essamento, é possível onstruir e usar té ni as de odi ação
de vídeo mais robustas e e ientes que satisfaçam as ne essidades das apli ações de vídeo
existentes. O obje tivo prin ipal é substituir as velhas normas de odi ação de vídeo por
outras maismodernas e poderosas, sem que sejane essário adi ionar anais de omuni ação
1.1 Obje tivos
Nestadissertaçãopretende-se apresentar oestadodeartede algumasnormasde
ompres-sãodevídeo/imagemmaisimportantes. Estetrabalhoin idesobreumestudoaprofundadoda
mais re ente norma de odi ação de vídeo, o H.264 Advan ed Video Coding (H.264/AVC).
Para além de um estudo detalhado da norma, iremos efe tuar alguns testes que medirão o
desempenho da norma relativamente àsprin ipais normas de odi ação maisantigas. Para
poder usar as implementações de algumas normas, tivemos de desenvolver um onjunto de
ferramentasde manipulação devídeo.
1.2 Estrutura
Estedo umento en ontra-seestruturalmente dividoem sete apítulos e umanexo:
•
O Capítulo 2 apresenta-nos alguns on eitos base de vídeo, que são ne essários para a ompreensão do Capítulo 3,sobre odi ação de vídeo.•
O Capítulo3 pretende reveralguns on eitos bási ossobre odi ação devídeo.•
No Capítulo 4, sãodes ritasalgumas normas de odi ação de vídeo maisimportantes tais omo oH.261,H.262,MPEG-1, MPEG-2 eMPEG-4.•
O Capítulo5 des reve om algumdetalhe a estrutura danorma H.264/AVC.•
O Capítulo 6 ontém alguns resultados práti os relativos à ompressão de algumas sequên ias de vídeo. O software utilizado para obter os resultados de ompressãoen ontra-se des rito neste apítulo, juntamente om a des rição das sequên ias de
ví-deo utilizadas. Este apítulo também ontém uma des rição resumida do software de
manipulação de vídeo desenvolvido.
•
Capítulo 7 é o apítulo nal que ontém as on lusões do estudo e indi ação de um possíveltrabalho futuro.•
OAnexoA ontémado umentaçãodasferramentasdemanipulação devídeo desenvol-vidas, queserviram de apoioparaa obtenção dosresultados práti os.Con eitos de vídeo
Neste apítulo, apresentam-se os on eitos bási os ne essários para a ompreensão da
odi ação de vídeo (ver Capítulo 3 para mais detalhes). Ini ialmente, iremos des rever o
on eito de amostragem de um sinal de vídeo. De seguida, são apresentados os espaços de
oresprin ipaispararepresentarumasequên iadevídeo. Porm,é expli ado omopodemos
avaliara qualidadede umvídeo re onstruído, tanto obje tivamente omosubje tivamente.
2.1 Amostragem temporal/espa ial
Um sinal de vídeo digital é representado por uma sequên ia de imagens (frames), que
sãoobtidas através de um pro esso de amostragem espa ial e temporal. A frame resulta da
amostragemouresoluçãoespa ial,enquantoqueaamostragemtemporal, traduz-senonúmero
deframesquesão apturadasporumadeterminadaunidadedetempo. Estasframes,aoserem
reproduzidas emsequên ia, riam umailusãode movimento (verFigura2.1)[81 ℄.
Analisando a frame n+3 da Figura 2.1, ada ponto a inzento representa uma amostra
espa ial, que designamos omo píxel (da língua inglesa pi ture element). A um onjunto de
píxeis,inseridosnomesmoplanoespa ial, hamamosamostratemporalouframe. Cadapíxel
representa o brilho e a or da sua posição espa ial, usando valores numéri os. O número
de valores ne essários para representar o brilho e a or depende do espaço de or utilizado.
No aso do RGB (ver Se ção 2.3.1) que tem três omponentes, são ne essários três valores
numéri ospararepresentarobrilhoea ordaamostraespa ial. SeemvezdeRGBestivermos
a usar um vídeo em es ala de inzentos, é possível representar ada píxel utilizando apenas
umvalor numéri o, que representa apenasobrilho [64 , Cap.1℄.
A qualidade da imagem de um determinado vídeo está dire tamente rela ionada om o
número de amostras espa iais (píxeis) que tem. Quanto mais amostras espa iais a imagem
onúmero de amostras por unidade de tempo, melhorserá auidez de movimentos do vídeo.
Se numadeterminadasequên ia devídeoutilizarmos pou asamostras espa iais,énotórioum
aspe torugoso (efeitotipomosai o) na qualidade da imagem do mesmo. Se,por outro lado,
utilizarmos pou as amostras temporais por unidade de tempo (10 a 15 frames por segundo,
típi oem omuni açõesdebaixodébito),veri a-seapresençadesaltosentreosmovimentos.
Ataxamaistípi autilizadanassequên iasdevídeoa tuaisvaide25a30framesporsegundo.
Aestataxa,osmovimentosdovídeouem ommaiorqualidade. A tualmente, omatelevisão
de altadenição,utiliza-se umaamostragemtemporalentre50a 60frames porsegundo, que
providen iam umasensaçãode ummovimento suavee uído(sem saltos) [14 , 81℄.
Amostragem espacial
Amostragem temporal
frame n
frame n+1
frame n+2
frame n+3
Figura 2.1: Amostragem temporal eespa ial de umasequên ia devídeo (adaptada de [72 ℄).
2.2 Constituintes de uma sequên ia de vídeo
Na Figura 2.2 é-nos apresentado omo é que uma sequên ia de vídeo é dividida para ser
posteriormente odi ada. Um sequên ia de vídeo onsiste numa sequên ia de frames. Cada
umadessasframespodeserdividiaemumoumaissli es(verSe ção5.1.2paramaisdetalhes).
Cada um dossli es, ontém vários ma roblo os. Cada um dos ma roblo os obre uma área
re tangular de 16
×
16 píxeis. Por m, ada umdesses ma roblo os ainda podes ser divididoem4blo os de8
×
8 píxeis.Existemtrêstiposdeframesquepodemserusadasno ontextoda odi açãodevídeo[64 ,
Cap.14℄:
•
Frames tipo I- Estetipode frame é odi ada deforma independentesem re ursoa outras frames, usandoapenaspredição espa ial (ver Se ção3.1.1).•
Frames tipo P- A predição temporal (verSe ção 3.1.2) utiliza dois tipos de frames, tipo P e B. As frames do tipo P são odi adas usando a redundân ia temporal das000
000
000
000
111
111
111
111
000
000
000
000
111
111
111
111
0000
0000
0000
0000
1111
1111
1111
1111
000
000
000
000
111
111
111
111
000
000
000
000
111
111
111
111
0000
0000
0000
0000
1111
1111
1111
1111
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
00000000
11111111
11111111
11111111
11111111
11111111
11111111
11111111
11111111
11111111
000
000
000
111
111
111
000
000
000
111
111
111
000
000
000
111
111
111
000
000
000
111
111
111
000
000
000
111
111
111
00
00
00
11
11
11
00
00
00
11
11
11
00000
00000
00000
00000
00000
00000
00000
00000
11111
11111
11111
11111
11111
11111
11111
11111
000
000
000
111
111
111
000
000
000
111
111
111
00000
00000
11111
11111
Sequência de vídeo
8 píxeis
8 píxeis
slice
frame
macrobloco
bloco
Conjunto de frames
Figura2.2: Componentes de umasequên ia devídeo.
frames do tipo I e P anteriores. Este tipo de frames ne essita de menos bits para ser
odi ada, omparando omaframe do tipo I.
•
Frames tipo B - A predição bidire ional utiliza este tipo de frames. Para odi ar umaframe dotipoB,podemosusarqualquerframe(I,PouB)dopassadooudofuturo.O pro esso de odi ação deste tipo de frames é relativamente mais omplexo que os
tiposanteriores.
2.3 Espaço de ores
Oespaço de ores é um método pararepresentar umadeterminada intensidade luminosa
(luminân ia)eumadeterminada or( rominân ia). Existemdiversosespaçosde ores,alguns
deles são mais e ientes no ponto de vista da per epção (aproximam-se do sistema visual
humano),outros maise ientes noponto de vista te nológi o (sãomaisfá eisde representar
ede transmitir)[62 , 92 ℄.
Alguns exemplosde espaçode ores:
•
RGB•
YUV/YCbCr•
CMY/CMYK•
CIE XYZ•
HSV•
HSL2.3.1 RGB
No espaço de ores RGB (Red Green Blue), os píxeis de uma determinada imagem ou
sequên iadevídeosãorepresentadosatravésdetrêsnúmerosqueindi amaproporçãode ada
omponente de vermelho, verde e azul. Qualquer orpode ser riada atravésda ombinação
do vermelho, verde eazul [58,91 ℄.
Na Figura 2.3 podemos visualizar a divisão das três omponentes de uma determinada
imagem. O papagaio da direita é em grande parte vermelho e por isso, se analisarmos a
divisão em omponentes RGB em baixo, veri amos que a omponente vermelha (R) nessa
zona é mais lara do quenasoutras omponentes.
Figura 2.3: Visualização das omponentes do espaço de ores RGB. Em ima a imagem
original. Em baixo, à esquerda a omponente vermelha (R), no entro a omponente verde
(G) e à direitaa omponente azul(B) [60 ℄.
2.3.2 YUV/YCbCr
OYUVé umespaçode ores alternativo aoRGBqueseaproximamaisdosistemavisual
humano. Osistemavisualhumanoéespa ialmentemenossensívelà or( rominân ia)doqueà
intensidadeluminosa(luminân ia). Oespaçode oresYUVébastanteusadona ompressãode
vídeopoisseparaas omponentesda rominân iaedaluminân iapararepresentara ordeum
determinado píxel. Esta separação permite a utilização de té ni as de ompressão diferentes
na omponente da luminân ia e nas omponentes de rominân ia, de forma a explorar as
limitações do sistema visual humano. A omponente G do RGB é a omponente onde o
YUV.As omponente Be Rsão representadas entãopelas omponenteUV/
C
b
C
r
do espaçode ores YUV[35 , Cap.3℄[48℄.
NaFigura2.4podemosobservararepresentaçãodastrês omponentesdoYUVdamesma
imagem usadana Figura2.3.
Figura 2.4: Visualização das omponentes do espaço de ores YUV. Em ima a imagem
original. Em baixo, à esquerdaa omponenteY, no entro a omponenteU/Cb e àdireita a
omponente V/Cr [60℄.
Por vezes, é ne essário onverter uma imagem no formato RGB para YUV devido às
limitaçõesdememóriaedelargura debandaexistentesnumadeterminada apli açãodevídeo.
Asequaçõespara onverter umaimagemem RGB paraYUVe vi e-versaestão apresentadas
em (2.1) e(2.2), onde
k
r
ek
b
sãofa toresde peso[72℄.Y = k
r
R + (1 − k
b
− k
r
)G + k
b
B
C
b
=
0.5
1 − k
b
(B − Y )
C
r
=
0.5
1 − k
r
(R − Y )
(2.1)R = Y +
1 − k
r
0.5
C
r
G = Y −
2k
b
(1 − k
b
)
1 − k
b
− k
r
C
b
−
2k
r
(1 − k
r
)
1 − k
b
− k
r
C
r
B = Y +
1 − k
b
0.5
C
b
(2.2)Are omendaçãoITU-RBT.601[70℄deneosvaloresdosfa tores,
k
b
= 0.114
ek
r
= 0.299
.Substituindoem (2.1)e (2.2) temos
Y = 0.299R + 0.587G + 0.114B
C
b
= 0.564(B − Y )
C
r
= 0.713(R − Y )
(2.3)R = Y + 1.402C
r
G = Y − 0.344C
b
− 0.714C
r
B = Y + 1.772C
b
.
(2.4) Sub-amostragem da rominân iaAsub-amostragemda rominân ia onsiste nautilização demenos largura debanda
(me-nosbits)na rominân iadoquenaluminân ia. Comoosistemavisualhumanoémaissensível
à luminân ia,a utilizaçãodemenosdados(bits) na omponenteda rominân ianão irá
afe -tar a qualidade nal do vídeo. Existemvários tiposde sub-amostragem da rominân ia. Os
prin ipaistiposapresentam-sena Figura2.5.
Na primeira sub-mostragem não existe distinção nenhumaentre as3 omponentes
(lumi-nân iae rominân ia)ouseja, ada omponenteY,UeViráutilizaromesmonúmerodebits
pararepresentar opíxel emquestão. No YUV4:2:2 a rominân ia usametade dalargura de
bandada luminân ia (a resolução horizontal éreduzida parametade). Estasub-amostragem
reduz o tamanho do vídeo para um terço sem que se note muita diferença relativamente ao
YUV 4:4:4. Finalmente o YUV 4:2:0 apenas ne essita de metade da largura de banda da
resolução horizontal e verti al da luminân ia para representar a rominân ia. A utilização
dos últimos doistiposdesub-amostragem ausaperdade informaçãoque nãose podevoltar
a re uperar. A perda em ausaé tãopou o relevante que para o sistema visual é fa ilmente
YUV 4:2:2
YUV 4:2:0
YUV 4:4:4
Crominância
Luminância
Figura2.5: Ostrês prin ipaistiposdesub-amostragem doYUV.
2.4 Formatos de vídeo
Existeumagrandevariedadedeformatosde odi açãodevídeo,quedenemaresolução
dasimagensdomesmo. Dentrodo ontextodestetrabalhoapenasserãoabordadososformatos
perten entesaogrupoCommonIntermediate Format (CIF).OsformatosCIFsãoimportantes
umavezquerepresentamabasedeumasériedeformatos[14℄. NaTabela2.1,sãoapresentados
alguns dosformatosmais onhe idos,ondeé in luídainformaçãorelativaàresoluçãodovídeo
eo número de bitsne essários parao poderarmazenar.
Formato
Resolução da luminân ia
Bits por frame
(usando o formato YUV
(horizontal x verti al)
4:2:0, a 8 bits por píxel)
Sub-QCIF 128x96 147456
QuarterCIF (QCIF) 176x144 304128
CIF 352x288 1216512
4CIF 704x576 4866048
Tabela2.1: Formatos dasframes de vídeo [72 ℄.
Na Figura 2.6, é apresentada umaframe de umadeterminada sequên ia de vídeo,
amos-trada em diversas resoluções, desde Sub-QCIF até4CIF. A es olha de umtipo de resolução
depende daapli ação, da apa idade dearmazenamento disponívele da apa idade de
trans-missão. Porexemploo4CIFéapropriadoparaatransmissãodetelevisãoeparaoVídeo-DVD.
eSQCIFsãoadequadosparaapli açõesde multimédiamóvelonde aresolução dodisplay e o
bitrate sãoreduzidos.
Figura2.6: Frame de uma sequên ia de vídeo, amostrada em diversasresoluções (adaptada
de[72℄).
2.5 Qualidade e omplexidade do vídeo
2.5.1 Qualidade
Parasepoder ara terizarumsistemadevídeo,éne essáriomedirequanti araqualidade
de uma imagem de vídeo, de forma a se poder omparar om outros sistemas de vídeo. A
avaliação da qualidade de um sinal de vídeo não é fá il de apli ar, pois depende de muitos
fa toresque podeminuen iar os resultados. Normalmente, a avaliaçãoda qualidade de um
sinalé lassi adasegundoum ará tersubje tivoenãoobje tivo. Paraumdadoobservador,
a qualidade de imagem de uma determinada sequên ia de vídeo pode ser muito boa. No
entanto, umoutroobservadorpoderápensarque aqualidade é meramenterazoável[72℄.
De forma a resolver os problemas da avaliação subje tiva da qualidade de imagem de
umadeterminadasequên ia devídeo,oITU-Temitiuare omendaçãoITU-RBT.500-11[71 ℄,
onde indi a um método para fazer uma análise subje tiva. Esse método tem omo nome
Double Stimulus Continuous Quality S ale (DSCQS) e sugere que o observador seja sujeito
a várias sequên iasde imagens do vídeo A e B.As imagens de ambos osvídeos são exibidas
disso, é pedido ao observadorque lassique a imagem dentro de umaes ala sequen ial. No
nal do teste, os valores obtidos por parte do observador são normalizados e é atribuida
uma pontuação a ada sequên ia de vídeo. Este método, apesar de apresentar resultados
satisfatórios, apresenta alguns problemas práti os. Se o observador es olhido para fazer a
avaliaçãodassequên iasdevídeo forumapessoa omalguma experiên ia nestaárea, esteirá
realizar uma avaliação ompletamente diferente, prejudi ando assim a pontuação do vídeo.
Por outro lado, para efe tuar uma avaliação ável da qualidade do vídeo, é ne essária uma
vasta gamade observadores,querequerum usto a res ido emuito tempo despendido.
Outra forma de avaliara qualidade dasimagens de uma determinada sequên ia de vídeo
é utilizartestesobje tivos. Aqualidadedeimagemneste tipodetesteséobtidadire tamente
atravésde algoritmos de análise. Umdosmétodosobje tivos éa relaçãosinal/ruído de pi o,
ou,eminglês, Peak Signal toNoise Ratio
PSNR = 10 log
10
(2
n
− 1)
2
MSE
(dB)
(2.5)RMSE =
√
MSE
(2.6) onde,MSE =
1
mn
m−1
X
i=0
n−1
X
j=0
||f(i, j) − F (i, j)||
2
.
(2.7)PSNR é medido numa es alalogarítmi a e depende do erro quadráti o médio (MSE) da
imagem original,
F (i, j)
, e da manipulada,f (i, j)
, relativamente ao valor máximo possíveldosinal ao quadrado,
(2
n
− 1)
2
,onde
n
representa o número de bits a usarpara representarada píxel. Como se pode veri ar, o PSNR é fá il e rápido de al ular, pelo que, o PSNR
tornou-seummétodo muito popular usado paraa omparaçãode imagens. A Equação (2.6)
orresponde àformulapara al ularo Root Mean Squared Error.
Noentanto,estemétodotemlimitações. Parapoder al ularoPSNR,éne essáriosempre
aimagemoriginalpara onseguir omparar omaimagemmanipulada. Nemsempreosvalores
doPSNR obtidos orrespondemaosresultadosqueasanálisesde qualidadesubje tivageram.
Existemalguns asos onde a qualidade da imagem atribuida pelo PSNR é boa mas o efeito
visual não é o ideal (análise subje tiva). Os asos mais típi os são os exemplos de imagens
onde o rosto de uma pessoa, na imagem, apresenta alguma distorção devido ao pro esso de
odi ação. Apesar do PSNR nestes asos ser relativamente bom, o observador humano dá
maisimportân iaàqualidadedorostohumanonaimagemdoqueaorestodaimagem[14 ,81 ℄.
Devido àslimitações do PSNR, tem havido muito trabalho nosúltimos anospara
subje tivos. Já surgiram várias propostas, mas nenhuma delas é uma boa alternativa ao
PSNR, pelo quenão serãoenun iados neste trabalho.
2.5.2 Complexidade
Avaliar a omplexidade de uma determinada sequên ia de vídeo não é uma tarefa fá il.
No ontexto da odi ação de vídeo, a omplexidade de umasequên ia de vídeo depende de
diversos fa tores. A forma mais e iente e simples de estimar a omplexidade de um vídeo
é utilizando o on eitode entropia de primeira ordem. Dadoum determinado alfabeto
A
den
símbolos,em que ada um deles o orre om umaprobabilidadeP
i
,a entropia de primeira ordemé dada porH = −
n
X
i=1
P
i
log
2
(P
i
).
(2.8)Emprin ípio,quantomais omplexaforafontedeinformação(sequên iadevídeo),maior
Con eitos bási os de odi ação de
vídeo
Grandeparte dasnormas de odi ação devídeo riadasatéhoje sãobaseadas nomesmo
modelo híbrido de odi ação (Ver Figura 3.1). Este modelo ontém na primeira etapa um
estimador para a ompensação de movimento, uma etapa de transformação, uma etapa de
quantização, varrimento zig-zag e nalmente o odi ador de entropia. Estas etapas têm
omo obje tivo eliminar ao máximo a redundân ia existente nas sequên ias de vídeo [72 ,
Cap.3℄[88 ℄.
Ostrês tiposderedundân ia existentes são:
•
Redundân ia espa ial.•
Redundân ia temporal.•
Redundân ia estatísti a.Os dois primeiros tipos de redundân ia representam a informação dupli ada existente
tanto espa ialmente omo temporalmente, na estrutura de dados que representa a sequên ia
de vídeo. A última redundân ia está rela ionada om a estatísti a dos dados. O obje tivo
das etapas de odi ação referidas na Figura 3.1 é explorar as três redundân ias de forma
a propor ionar boas taxas de ompressão. Seguidamente, iremos des rever ada umadessas
etapas om maisdetalhe.
3.1 Métodos predi tivos
Os métodos predi tivos exploram a redundân ia existente entre frames onse utivas ou
DCT
Quantização
Predição espacial
Estimativa e compensação de movimento
Aquisição em RGB
de vídeo codificada
Stream
Varrimento zig−zag
Codificador de entropia
Converter para YUV
é odi ada, armazenadae transmitida.
3.1.1 Predição espa ial
A predição espa ial (intra-frame), também onhe ida omo DPCM (Dierential Pulse
Code Modulation), é um método que usa os píxeis vizinhos que já foram odi ados para
odi ar opíxela tual. Na Figura3.2temosumpíxelX queéne essário odi arusandoos
píxeisvizinhos(A,BeC)já odi ados. Umpíxeljá odi adopodeserdiferentedooriginal,
ouseja,ovalordopíxellidopelo odi adorantesdeser odi adopodeserdiferentedovalor
queiráserlidonodes odi adordepoisdedes odi ado. O odi ador,para odi arovalor
do píxel X, ria uma predição usando uma ombinação dos píxeis vizinhos já odi ados,
subtrai essa predição do valor do píxel X e odi a apenas o valor residual (diferença entre
a predição eo valororiginal de X). No des odi ador, é possívelobter amesma predição e o
valorresidual dopíxelX.Se adi ionarmosaovalordapredição oresíduo,serápossíveldepois
obter ovalor dopíxel X[66, Cap.9℄.
Order
Scan
Raster
A
B
C
X
Figura3.2: Prediçãoespa ial. OvalordopíxelXseráestimado ombasenosvaloresde A,B
e C(adaptada de [72 ℄).
3.1.2 Predição temporal ( ompensação de movimento)
A predição temporal aproveita a redundân ia temporal existenteentre frames para obter
melhores taxasde ompressão. Primeiro aframe a odi ar édividida emblo os(o tamanho
do blo o varia nas diferentes normas de odi ação). Para ada blo o da frame é feita uma
pesquisa de um blo o na frame de referên ia (pode ser passada ou futura) na mesma zona
do blo o daframe a tual, queseja o maispare ido possível( om menor erro). As diferenças
entreoblo oa tual eoreferên iasão odi adasjuntamente omove tordemovimento que
estáasso iadoaodeslo amentotemporaldoblo oem ausa. NaFigura3.3podemosobservar
Vector movimento a codificar
Bloco mais parecido
Calcular a diferença entre os blocos
e depois codificar
PSfragrepla ements
Frame referên ia
Frame a odi ar
Figura3.3: Prediçãotemporal (motion ompensation)
3.2 Métodos de transformação
Os métodos de transformação são utilizados para transformar os dadosque representam
umasequên ia devídeo,de umdomíniomatemáti o paraoutromaisadequadoao método de
ompressão. Nesta se çãoiremos des reveralgunsdesses métodos.
3.2.1 Transformada de Co-seno Dis reta (DCT)
A transformada de o-seno permite representar de uma forma diferente um dado sinal
(bidimensional pois estamos a falar de uma imagem) alterando o seudomínio, neste aso de
espaço parafrequên ia. Basi amente, olhamos para umsinal numa perspe tiva diferente. A
DCT alterao domíniodo espaçopara frequên iade forma avisualizar de forma on entrada
toda a energia do sinalem pou os oe ientes. Em geral,este pro esso reduza redundân ia
espa ial. A DCT é a transformada mais usada na odi ação de vídeo apesar de não ser
óptima. Parapoderapli ar a DCT, ada frame da sequên ia de vídeo tem de serdivida em
blo os (normalmente de 8
×
8 amostras). A transformada é apli ada aos valores deintensi-dade de ada píxel do blo o. Deste pro esso resulta um onjunto de NxN oe ientes que
representamaframe nodomíniodafrequên ia. Tipi amente, antesde apli aratransformada
DCT osvaloresdeintensidade de ada píxelsãodeslo adosdo onjunto dosnúmerosinteiros
não negativos entre [0, 2
p
-1℄, para o onjunto dos números inteiros entre [-2
p−1
, 2
p−1
Figura3.4podemosverumesquemadatransformadaDCT.Estepro esso,paraalémdegerar
muitos oe ientespróximosdezero,tendetambéma on entraraenergiados oe iente
pró-ximodo oe iente de oordenadas (0,0). Este oe iente denomina-se por DC e representa
aluminosidade média doblo o. Os restantes oe ientes, que sãonormalmente próximos de
zero, am on entrados no antoinferiordireitoedepoisdopro esso dequantização irãoser
transformadosemzeros [41 , 49℄.
Podemosanalisarumexemplo on retodaDCTnasTabelas3.1e3.2. NaTabela3.1temos
arepresentação dasamplitudesdeumdeterminado blo o 8
×
8e naTabela3.2os oe ientesresultantes datransformada DCT.
DCT
IDCT
j
8 pixels
8 pixels
l
Frequência Vertical
k
i
Frequência Horizontal
DC
PSfragrepla ements Blo o de amplitudes8×
8 Blo ode oe ientes8×
8Figura 3.4: Transformada DCT dire tae inversade umblo o de 8
×
8.88 84 83 84 85 86 83 82 86 82 82 83 82 83 83 81 82 82 84 87 87 87 81 84 81 86 87 89 82 82 84 87 81 84 83 87 85 89 80 81 81 85 85 86 81 89 81 85 82 81 86 83 86 89 81 84 88 88 90 84 85 88 88 81
675 1 -6 2 -2 0 5 -5 -4 1 2 1 5 1 -3 0 2 3 4 6 -2 2 1 5 -3 -1 0 2 0 -2 2 -4 4 3 1 -1 -2 1 -3 1 1 -2 0 -3 2 -1 1 1 3 0 -1 0 -1 -1 0 -2 -1 -1 -5 5 2 -2 2 0
Tabela 3.2: Coe ientes resultantes da apli ação da DCT sobre o blo o representado na
Tabela 3.1.
3.2.2 Quantização
Aquantizaçãoéumaté ni aquepermiteo envio demenos informação (menosbits)para
serpro essadanodes odi ador. Estemétodoreduzaqualidadedovídeoeéirreversível( om
perdas), pelo que é fundamental um orre to a erto dos parâmetros de quantização usados
paranão reduziremdemasiaa qualidadedovídeo. Existemdiversosmétodosdequantização
que podemser usados no ontexto de odi ação de vídeo. Aquantizaçãoes alar eve torial
são dois métodos de quantização simples que estão detalhados em [72, Cap.3℄. Por outro
lado, geralmente podemos denir uma matriz de quantização que tem em onsideração a
distribuição dos oe ientesdebaixafrequên ia. Nos oe ientesdealtafrequên ia,podemos
usarparâmetrosdequantizaçãomaiselevados,poisaperdadeinformaçãonesses oe ientesé
menos relevante paraosistemavisualhumano. Tendoem onsideraçãoasparti ularidadesdo
sistemavisual humano noqueto a àsensibilidade naluminân ia, épossívelusarmatrizesde
quantizaçãodiferentesparaas omponentes deluminân ia ede rominân iadoYUV[49, 97 ℄.
Na Tabela 3.3, é apresentado um exemplo de uma matriz de quantização. Para apli ar
esta matrizdequantizaçãoaos oe ientesdaTabela3.2, éne essárioefe tuarumaoperação
de divisão e arredondamento usando
CQ
i,j
= round
C
i,j
Q
i,j
!
,
(3.1)onde
C
representa os oe ientesresultantesda DCT,Q
representa amatriz dequantização,CQ
representa a matrizdos oe ientes já quantizados,i
ej
representam a linha e a oluna damatriz. O arredondamento é efe tuado parao inteiro maispróximo. Usandoesta formulae os valores das Tabelas 3.2 e 3.3, podemos hegar à matriz apresentada na Tabela 3.4. No
paraobteros oe ientes da DCT.Os oe ientes obtidos sãodiferentesdosoriginaisdevido
ao arredondamento efe tuado no odi ador. Onível de distorção pode ser ontrolado pelos
valoresusados na matrizde quantização.
2 4 6 8 10 12 14 16 4 6 8 10 12 16 18 20 6 8 10 12 14 16 18 22 8 10 12 14 16 18 20 24 10 12 14 16 18 20 22 26 12 14 16 18 20 22 24 28 14 16 18 20 22 24 26 30 16 18 20 22 24 26 28 32
Tabela3.3: Exemplode umamatrizde quantização.
338 0 -1 0 0 0 0 0 -1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
Tabela 3.4: Coe ientes resultantes da apli ação da quantização sobre o blo o representado
na Tabela3.2, usandoa matrizde quantização apresentada naTabela 3.3.
3.2.3 Varrimento zig-zag
Existem dois tiposde varrimento zig-zag: a progressiva e a entrelaçada (ver Figura3.5).
Ambostêmomesmoobje tivodereordenarparaagruparos oe ientes omvaloresidênti os,
tornando arepresentaçãodosrestantes valores(zeros), maise iente. A ordenação dos
oe- ientes omeça peloDC,situado no anto superioresquerdo doblo o. Seguindo qualquerum
dosvarrimentosapresentadosnaFigura3.5,os oe ientesnãonulostendema aragrupados
logo no ini io da matriz ordenada, depois do DC.No nal da matriz, am assequên ias de
Figura3.5: Varrimento zig-zag parasistemas om varrimento progressivo à esquerda e para
sistemas omvarrimento entrelaçado àdireita.
3.2.4 Codi ação de entropia
A odi ação de entropia é uma té ni a que permite onverter uma série de símbolos,
perten entes a um qualquer alfabeto, numa sequên ia de bits que possa ser armazenada ou
transmitidamaise ientemente. Oobje tivoéexplorararedundân ia estatísti amen ionada
noCapítulo 3, de formaa usar omenor número de bits possível. No ontexto da odi ação
devídeo, existemduasté ni as maisusadas:
•
Codi ação de omprimento variável•
Codi ação aritméti aCodi ação de omprimento variável
Esta té ni a de odi ação mapeia os símbolos de entrada num onjunto de ódigos de
omprimento variável. Os símbolos mais frequentes são odi ados om menos bits. Os
símbolos menos frequentes são odi ados om mais bits. Desta forma, é possível reduzir o
omprimento médioda mensagem. A odi ação de Humané umexemplo desta té ni ade
odi ação. Para poder usar a odi ação de Human [32℄, é ne essário al ular no iní io a
probabilidadedeo orrên iade adasímbolo,parapoderfazeraatribuição orre tadonúmero
de bits que ada símbolovaiusar. A odi ação de Human possuiumadesvantagem muito
signi ativa, pois se numa transmissão existirem erros, poderá será impossível des odi ar
orre tamente o onjuntodesímbolosenviados. Paraalémda odi açãodeHuman,existem
outras té ni as de odi ação, tais omo os ódigos de Golomb, Levenstein, Goldba h e de
Na Figura 3.6 podemos visualizar um exemplo de odi ação de Human. À esquerda
en ontra-se um onjunto de símbolos (X1 a X4) om as respe tivas probabilidades ao lado.
A árvore binária é onstruída da esquerda para a direita ombinando os dois símbolos de
menor probabilidade. Esta ombinação resulta num símbolo uja probabilidade orresponde
à soma da probabilidade dos símbolos ombinados. Este pro esso repete-seatéhaver apenas
umsímbolo omprobabilidade um. A árvorebinária é agoralida da direita paraa esquerda
parapoderatribuirosbits a ada símbolo. NaTabela 3.5é apresentado oresultado nal.
X1: 0.4
X2: 0.35
X3: 0.2
X4: 0.05
0.25
0.6
1
0
1
0
0
1
1
111
110
10
0
Figura 3.6: Codi açãode Human.
Símbolo Código
X1 0
X2 10
X3 110
X4 111
Tabela 3.5: Códigosde Human paraossímbolos X1,X2, X3e X4.
Codi ação aritméti a
A odi ação aritméti a é umaboa alternativa à odi ação deHuman, des rita
anteri-ormente. Este método de odi ação omeçou a ser desenvolvido na dé ada de sessenta e a
suaversão nalsurgiu nonaldosanossetenta, iní ios dosanosoitenta,atravésdeJorma J.
Rissanen[74℄. Neste tipo de odi ação, o onjunto de símbolos é representado por um
nú-merorealnointervaloentrezeroeum. Àmedidaqueonúmero desímbolosda mensagemvai
res endo, o intervalo ini ial vaidiminuindo e o número de bits ne essários para representar
aritmé-ti a é elegante e versátil, pois gera resultados de ompressão e ientes na maioria dos asos,
dependendoda distribuição dafontede informação[11, 31 ,77℄.
NaTabela3.6temosum onjuntodesímbolos omumaprobabilidadeeintervaloasso iado.
Para odi ara palavraDETI,usandoum odi ador aritméti o, temosqueseguirospassos
da Tabela 3.7 e da Figura 3.7. Ini ialmente o intervalo de odi ação é [0, 1). O primeiro
símboloa odi aréaletra D.ComoaletraDtêmumintervalode[0.1,0.2),onovointervalo
é al ulado atravésde
LI
n+1
= LI
n
+ i(LS
n
− LI
n
)
LS
n+1
= LI
n
+ s(LS
n
− LI
n
),
(3.2) ondeLI
n
eLS
n
são,respe tivamente,oslimitesinferioresuperiordointervalodopasso
n
. Oi
e os
representam oslimites do próximo símboloa odi ar. Assimsendo, o novo intervalo, após odi ar osímboloD,éLI
1
= LI
0
+ i(LS
0
− LI
0
) = 0 + 0.1(1 − 0) = 0.1
LS
1
= LI
0
+ s(LS
0
− LI
0
) = 0 + 0.2(1 − 0) = 0.2
(3.3)[0.1, 0.2).
Estepro esso érepetidoparatodosossímbolos dapalavra a odi ar, omopodemosver
na Tabela3.7 ena Figura3.7, atéobtermos ointervalonal[0.1476, 0.1479).
Depois de al ulado o intervalo nal, a mensagem a ser enviada é um número nesse
in-tervalo. Consideremos agora que a mensagem re ebida no des odi ar é o número 0.1478
(representado pela variável X). Esse número en ontra-se, segundo a Tabela 3.6, no intervalo
do símbolo D. O primeiro símbolo des odi ado é então o D. Para al ular o novo X, om
vista aobter osrestantessímbolos al ula-se
X
n+1
= (X
n
− LI)/(LS − LI)
= (0.1478 − 0.1)/(0.2 − 0.1)
= 0.478.
(3.4)O novo valor de X é 0.478. O valor de X é re- al ulado até hegar ao m da palavra.
Note-se que não existe uma forma automáti a de dete tar o m de uma mensagem. Para
resolver este problema é ne essário enviar informação adi ional, omo o número de símbolos
total ouum símboloespe ial paramde mensagem. A etapa de des odi ação está des rita
Símbolo Probabilidade Intervalo C 0.1 [0,0.1) D 0.1 [0.1,0.2) E 0.3 [0.2,0.5) F 0.1 [0.5,0.6) I 0.05 [0.6,0.65) S 0.15 [0.65,0.8) T 0.2 [0.8,1)
Tabela3.6: Conjunto de símbolos omassuas probabilidades erespe tivo intervalo.
n Símbolo I S i s 0 - 0 1 0.1 0.2 1 D 0.1 0.2 0.2 0.5 2 E 0.12 0.15 0.8 1 3 T 0.144 0.15 0.6 0.65 4 I 0.1476 0.1479 -
-Tabela 3.7: Pro esso de odi ação da palavra DETI.As letrasI e S representam oslimites
inferior e superiordo intervalo a tual,respe tivamente. Asletras ies representam oslimites
inferior e superior do símbolo a ser odi ado. A informação odi ada a ser enviada é um
número nointervalo[0.1476, 0.1479). n I S X Símbolo 0 0.1 0.2 0.1478 D 1 0.2 0,5 0.478 E 2 0.8 1 0.9267 T 3 0.6 0.65 0.6333 I
Tabela3.8: Pro essodedes odi açãodapalavraDETI.AsletrasIeSrepresentamoslimites
inferiore superior dointervaloda letra des odi ada.
Modelode ontexto-nitoadaptativo Para onseguirboastaxasde ompressãoé
ne es-sário terum bommodelo da fonte de informação. Ao longodos tempos foram riadas várias
té ni as paramodelar asfontesde informação[46, 75,102 , 103 ℄.
pro-0.2
0.1
0.12
0.15
D
E
T
I
<−−−−−−−−−− [0, 1] −−−−−−−−−−>
0.144
0.15
T
I
[0.1476, 0.1479)
Figura3.7: Esquema da odi ação aritméti a dapalavraDETI.
babilidadede adasímbolode umalfabeto
A
,tendoem onta um ontexto al uladousandoum onjunto nitode Mo orrên ias dopassado (modelode ontexto-nitode ordem M).No
instante
t
,o ontextoé representado porc
t
= x
t−M +1
, . . . , x
t−1
, x
t
. O número de estados de umdadomodeloé|A|
M
,queditaa omplexidade domesmo. No asode
A
={0,1},|A|
=2.Napráti a, a probabilidade dopróximo símbolo,
x
t+1
,serzeroé al ulada atravésdeP (x
t+1
= 0|c
t
) =
n(0, c
t
) + δ
n(0, c
t
) + n(1, c
t
) + 2δ
,
(3.5)onde
n(s, c
t
)
representa o número de o orrên ias do símbolo
s ∈ A
,no passado,tendo omoontexto ondi ionante
c
t
. O parâmetro
δ > 0
, para além de anar o estimador, evita ageração de probabilidadesnulas quandoo primeiro símboloé odi ado [56℄[82 , Cap.2℄.
Autilizaçãodeummodelode ontexto-nitodeumadeterminadaordem
O > 1
permiteoál ulodaprobabilidade dossímbolosqueapare em ommaisfrequên ia,de formaaatribuir
menos bits a estes. Normalmente, quanto maior for a ordem do modelo, mais pre isa será a
t+1
x
t−4
x
symbol
Input
t+1
P(x = s | c )
t
Model
c
t
Encoder
Output
bit−stream
0
0
0
1
...
1
0
1 1
...
Context
1
0
0
Figura3.8: Modelode ontexto nito: a probabilidade do próximosímbolo,
x
t+1
,éondi io-nadapelasúltimas
M
o orrên iasdo passado. Nesteexemplo,M
=5. Oblo o nagura omPrin ipais normas de odi ação de
vídeo e imagem
4.1 Codi ação de vídeo
Existemdiversasnormas de odi ação de vídeo que foram usadas nosúltimos anos. Na
Figura 4.1 podemos visualizar um esquema ronológi o das normas de odi ação de vídeo
desenvolvidaspelaITU-TepelaMPEG. Nestese çãoiremos des rever omalgumdetalheas
normas maisimportantes.
1988
1990
1992
1994
1998
2000
2002
2004
2006
2008
2010
2012
1984
1996
H.265
1986
(ITU−T + MPEG)
MPEG
ITU−T
JVT
H.263
H.263+
H.263++
MPEG−1
MPEG−4 (ASP)
H.262 ou
MPEG−2
H.264
FRExt
H.264 ou
H.261
MPEG−4 AVC
Figura 4.1: Cronologia do desenvolvimento das diversas normas de ompressão de vídeo,
apresentadasisoladamentepelosórgãoITU-TeMPEGeem onjuntoJVT(adaptadade[24 ℄).
4.1.1 H.261
OH.261foiaprimeiranormade odi açãodevídeodesenvolvida. FoidenidapelaITU-T
para ser usada em vídeo- onferên ia e vídeo-telefone utilizando ir uitos ISDN (Integrated
Servi es Digital Network). O débito binário era
p×
64kbit/s, ondep
representa o número deanaisBda redeISDN(1
≤ p ≤
30)[33 , 95℄. As ara terísti as prin ipaisdanorma são:•
Tipos de resolução ompatíveis: 176x144 (QCIF) e 352x288 (CIF) om amostragem 4:2:0 de rominân ia;•
Usa frames do tipo Ie P( ompensaçãode movimentos) masnão B;•
A quantizaçãodos oe iente é linear;•
Utiliza ódigos de omprimento variável(VLCs);•
Filtro anti-blo os.4.1.2 H.263
Algum tempo depois,o grupoITU-T, para podermelhorara qualidadedoH.261,de idiu
desenvolveroH.263. Relativamente ao H.261,este odi ador de vídeo providen ia uma
me-lhor ompressão,suportandodébitosbináriosnaordemdos30kbit/s. Apesardasuaestrutura
ser em muitos aspe tos semelhante ao H.261, o H.263 forne e melhor qualidade de imagem
om débitos binários de transmissão menores, à usta de um pou o mais de omplexidade.
Existem algumasdiferenças relativamenteao H.261,desta ando-seasseguintes:
•
Utiliza 4 ve tores de movimento em vez de um úni o omo no H.261. Cada ve tor de movimento está asso iadoa umblo o de 8x8do ma roblo o emvez de estar asso iadoao ma roblo o inteiro.
•
Ve toresdemovimentomaispre isos(meiopíxeldepre isão) quepropor ionammelhor qualidade de imageme melhores taxasde ompressão.Nestanorma foramadi ionados tambémquatro modosop ionaisqueservempara
melho-rara performan e da ompressão do vídeo e a robustez da transmissão através de um anal
de omuni ação. Apesar de todos os esforços para desenvolver té ni as que melhoraram a
qualidade eataxade ompressãodosvídeos, afra aqualidadedaslinhastelefóni aslimitava
de erta forma o desempenho dos odi adores de vídeo. O H.263 tornou-se a norma mais
usadaparavídeo- onferên iaesuporta odi açãodanorma H.261paraossistemasmais
ara terísti ase modosde odi ação. Estas extensõesserviram paramelhorar a ompressão
dos vídeos, propor ionando um ontrolo melhorado sobre osparâmetros do odi ador e um
desempenho maiornas redesde omuni açõesexistentes[17 , 23 ℄.
4.1.3 MPEG-1
Aprimeiranormade odi açãodevídeodesenvolvidapelogrupoMPEG(MovingPi tures
Experts Group) foioMPEG-1. Estafoidesenvolvida espe ialmente para o armazenamento e
reprodução de vídeo no formato VídeoCD (VCD). OMPEG-1 foi riado para ompetir om
astradi ionais assetes devídeo no formato VHS(Video Home System),quejá ne essitavam
de ser substituídas. Esta norma é semelhante ao H.261 mas ne essita de maisre ursos para
poder omprimir uma sequên ia de vídeo. Contrariamente ao H.261, o MPEG-1 permite o
uso de frames do tipo B e quantização per eptual adaptativa. A norma é assim onstituída
por in opartes:
•
Parte 1: Systems.•
Parte 2: Video.•
Parte 3: Audio.•
Parte 4: Conforman e testing.•
Parte 5: Software simulation.O MPEG-1 foi usado por várias indústrias, em vários produtos, serviços e apli ações,
desen adeando assim umforte res imento em outros que surgiram maistarde. Esta norma
usa várias té ni as de odi ação de vídeo, entre as quais desta am-se a ompensação de
movimento, DCT (Dis rete Cosine Transform) e a quantização. O débito de transmissão do
MPEG-1 ronda aproximadamente 1.5Mbit/s,o qual serevelouinsu iente parasubstituiras
assetes VHS. Apesar do Vídeo CD não ter sido muito popular na Europa e nos Estados
Unidos, teve bastante su esso em alguns países do ontinente Asiáti o. Apesar de tudo, o
MPEG-1 é uma norma de odi ação bastante usada para armazenamento de vídeo/áudio
nosPCs e naInternet [51 , 87℄.
4.1.4 MPEG-2
A seguir ao MPEG-1 su edeu-se o MPEG-2. O MPEG-2 foidesenvolvido espe ialmente
paraatelevisãodigitalefoiumanormade odi ação ommuitosu esso. A normaMPEG-2
maisfun ionalidadesparaproviden iar umamaior interoperabilidade, qualidadee
fun ionali-dade, sem prejudi ar a exibilidade do odi ador. Entre essas fun ionalidades desta am-se
osnovos modos de predição que permitem odi ar e ientemente vídeo entrelaçado, as
ex-tensões para es abilidade do vídeo e o aumento da zona de pro ura paraa ompensação de
movimento. Estasalteraçõesmelhoramgrandementeaqualidadedevídeo,masne essitamde
poder omputa ional adi ional. O MPEG-2, no entanto, pode também des odi ar
sequên- iasde vídeo no formato MPEG-1 paraasapli ações maisantigas. Aspartes adi ionadas no
MPEG-2são:
•
Parte 6: Software extensions - DSM-CC.•
Parte 7: Audio extensions - AAC (Advan ed Audio Coding).•
Parte 8: 10 Bit video (abandonado por falta de interesse da indústria).•
Parte 9: System extensions - RTI (Real Time Interfa e).•
Parte 10: DSM-CC - Conforman e testing.•
Parte 11: IPMP on MPEG-2 System.Para além de ter mais partes, o MPEG-2 foi a primeira norma a usar o on eito de
perl e de nível. O perl é basi amente um onjunto de algoritmos que são usados para
odi ação devídeos. Osníveis orrespondemao onjuntode parâmetros quesãosuportados
naimplementaçãodo odi ador. Estanorma, omojáfoireferido,tevemuitosu esso,estando
rela ionadodire tamente omosu essodasapli açõesquesurgiram omela(TelevisãoDigital,
serviçosATM,VídeoDVD,et ). Estanorma onseguiunalmentesubstituirasvelhas assetes
devídeoVHSpeloVídeo-DVD,dandoumpassoimportantenaste nologiasdearmazenamento
devídeo, passoesse quenão foipossívelatravésdo MPEG-1e do VídeoCD [29 , 47,94℄.
4.1.5 MPEG-4
OMPEG-4éumanormade odi açãodevídeoISO/IECdesenvolvidapelogrupoMPEG
omintuitode ante ipar arápida onvergên ia dasindústriasdetele omuni ações,
omputa-dores e da indústria da Televisão/Filmes. MPEG-4 tem por base o su esso omprovado em
três amposmuitoimportantes:
•
Televisãodigital;•
Apli açõesgrá as intera tivas ( onteúdosintéti o);Depois do su esso das normas MPEG-1 e MPEG-2, desenvolvidas também pelo grupo
MPEG,oMPEG-4foiresultadodeumesforço interna ional queenvolveu entenasde
investi-gadoreseengenheirosdetodooMundo. OgrupoMPEG omeçouadeniranormaMPEG-4
em1994. O obje tivo desta primeira fase era a espe i ação dosalgoritmos e ferramentas a
usar na ompressão e na representação da informação áudio-visual, de uma forma exível e
que umprisse os futuros requisitos das apli ações e serviços da multimédia intera tiva. De
formaa umpriressesobje tivos, foine essário riar novosmétodosuniversais e e ientes de
odi ação áudio-visual, onhe idos também omo obje tos áudio-visuais (em inglêsAV
ob-je ts ou AVOs). A norma MPEG-4,denidapelaISO/IEC 14496,foinalizadaem Outubro
de 1998 e tornou-se num International Standard nos primeiros in o meses de 1999. Várias
extensõesforamadi ionadasànorma omode orrerdotempo. OMPEG-4Versão2adquiriu
o estatuto de International Standard no ano 2000. A tualmente ainda existe trabalho em
progresso para adi ionar novasextensões[100 ℄.
OMPEG-4herdouemelhoroumuitasdasfun ionalidadesdasnormasMPEG-1eMPEG-2 .
Para além dessasmelhorias, foram adi ionadas novas fun ionalidades omoo suportede
ob-je tos 3D, sprites 1
,textoe outros tiposde media [83 , 86℄.
Esta norma é onstituída por um onjunto de partes inter-rela ionadas. Estas partes
podemserimplementadas individualmenteou em onjunto omoutras partes [53 , 59℄.
Algumasdessaspartesaindaestãoemdesenvolvimento,outrasjáseen ontramnalizadas.
Existem 23 partes no MPEG-4, dasquais desta amos asseguintes, por estarem rela ionadas
om odi açãode vídeo:
•
Parte 2: Visual - Espe i a os ode s para a odi ação de dados visuais (vídeo, texturas,imagenssintéti as,et .). UmdospersmaisusadoséoASP(Advan ed SimpleProle).
•
Parte 10: Advan ed Video Coding (AVC) - Code de vídeo mais onhe ido por H.264 (verSe ção 5paramais detalhes).Existemváriasentidadesqueusam oMPEG-4 omonorma de odi ação, masestasnão
espe i am expli itamente qual é a parte da norma a que se referem. A Parte 2 (in lui o
perl ASP), é usada emalguns ode s muito onhe idos tais omo o DivX [2℄, o Xvid [6℄, o
NeroDigital[3 ℄,o3ivx[1℄epeloQui ktime6[4℄. AParte10(MPEG-4AVC/H.264),éusada
pelo ode x264 [5℄,pelo NeroDigital AVC[3℄,Qui ktime 7 [4℄e pela nova geraçãode DVDs
omo o HDDVD e osdis osBlu-ray. No Capítulo 5 podemos en ontrar maisdetalhes sobre
a Parte 10 doMPEG-4.
1
Ossprites sãoobje tosexibidosemduasdimensões,quegeralmente ompõemelementosdefundoousão
Assim omoanormaMPEG-2,oMPEG-4 tambémusao on eitoperlenível. Ospers
permitem aos utilizadores es olher um onjunto de ferramentas que são mais adequadas às
suas ne essidades. Em ada perl,podemosespe i aronívelausar. Osníveis sãoummeio
de limitar a omplexidade ausar na odi ação de umasequên ia devídeo [53 , 83℄.
Na Tabela4.1podemos en ontrar ospers mais omuns do MPEG-4.
Pers de vídeo mais omuns
Perl Cara terísti as
Simple Visual Semelhante à odi ação do MPEG-2.
Advan ed Simple Visual Suporte de frames do tipo B, ompensação
de movimento global e odi ação
entrela-çada(níveis 4 e5).
Core Visual Suporte para obje tos binários do vídeo e
frames dotipoB.
AVCBaseline, AVC Main,AVCExtended e
AVCHigh
Ver Capitulo 5.2 para mais detalhes sobre
estespers.
Tabela4.1: Pers mais omuns no MPEG-4 [53 ℄.
4.2 Codi ação de imagem
Nesta se ção iremos apresentar, om algum detalhe, as quatro normas prin ipais de
o-di ação de imagem (JBIG, PNG, JPEG-LS e JPEG2000). Estas normas utilizam té ni as
diferentes de ompressão deimagem, omo iremosobservar.
4.2.1 A norma JBIG
A normaJBIG (JointBi-level Image Group) foi desenvolvida em1993 pelaInternational
Organization for Standardization / International Ele trote hni al Commission (ISO/IEC) e
pelaTele ommuni ationStandardizationSe toroftheInternationalTele ommuni ationUnion
(ITU-T)providen iando odi açãolossless eprogressiva(lossy-to-lossless)emimagens
biná-rias. Uma dasvantagens mais importantes do JBIGem omparação om outras normas é a
sua apa idade de odi açãoprogressiva easuae iên ia [22,27 ℄. A odi ação progressiva
onsiste nadivisão da imagem emdiferentes amadas no pro esso de ompressão. Quando a
imagem é des omprimida para servisualizada, o observador visualiza uma primeira imagem
Apesar doJBIG tersido on ebido para imagensa pretoe bran o(imagens binárias), é
pos-sível apli á-lo a imagens grays ale (es ala de inza) separando-as por planos e apli ando a
ompressão em ada plano omo se ada umdeles fosse umaimagem binária. Neste aso, a
utilizaçãodo Códigode Gray emvez dotradi ional ódigobináriopodemelhorar ae iên ia
de ompressão[7℄. Na Figura4.2en ontra-seodiagramade blo osdo odi adorprogressivo
JBIG.Atravésdessediagramadeblo os,podemos on luirqueoalgoritmobasede odi ação
do JBIG baseia-se num modelo de ontexto-nito e num odi ador aritméti o adaptativo.
Estealgoritmode odi ação podeser en ontrado om maisdetalhe em[55 ℄.
Apesar da norma JBIG ter apa idade para odi ação lossy, as imagens obtidas dessa
ompressão tinham qualidade signi ativamente inferior relativamente às imagens originais.
Deforma aresolverestesproblemasde qualidadede imagem, surgiu maistardeoJBIG2que
suporta odi ação lossy,lossless elossy-to-lossless. A normaJBIG2 tinha omo obje tivo a
obtenção de melhores resultados de ompressão lossless/lossy relativamente às normas
exis-tenteseporoutroladomelhorara ompressãolossy reduzindoadegradaçãodaqualidadedas
imagens. OJBIG2al ançou osobje tivospretendidos e paraalém dissoadi ionou um modo
de odi açãoprogressiva adi ionalquedependedo onteúdodaimagem ( ontent-progressive
oding). Estade omposição onsistebasi amentenaseparaçãodasimagensemregiões(texto,
halftone egenéri a). Cadaregiãoé então odi adautilizando métodosadequadosaotipo de
região. Estade omposiçãodo onteúdoémuitoimportanteprin ipalmenteparaasapli ações
de vídeo intera tivo [57℄.
Typical
Prediction
Deterministic
Prediction
Conditional
Predictive
Arithmetic
Model
Encoding
Adaptative
Binary
Image
Pixel − Skipping Prediction
Image Code
Resolution
Reduction
Resolution
Reduction
Table
Deterministic
Prediction
Table
Matched Tables (PRES, QT, etc.)
Compressed
Figura4.2: Diagrama de blo osdo odi adorJBIG(adaptada de [22 ℄).
4.2.2 A norma PNG
OPNG (Portable Network Graphi s) éum formato de heiro utilizado paraarmazenar,
transmitir e visualizar imagens. Este formato suporta odi ação lossless, diversos modos
de or ( or-indexada, grays ale e imagens true- olor) om uma transparên ia óptima (alpha
destas ara terísti as,esteformatosuportamaisalgumasfun ionalidadesavançadastais omo:
orre çãode oresedegama,visualizaçãoentrelaçadaeprogressiva,umespaçode orespadrão
e in lusão de informação textualparaguardar dados extra(título,nomedo autor, opyright,
et .)[76 ℄. UmapartemuitoimportantedanormaPNGéoalgoritmode ompressãousado. O
algoritmo Deate,espe i ado na RFC1951 [19℄, éuma ombinaçãodo algoritmo LZ77 e de
odi ação de Human. Este algoritmo Deate é usado pelanorma PNG na ompressão de
imagens, pois é bastante e iente omparado-o om a generalidade dos melhores algoritmos
de ompressão maisa tuais.
OPNG foidesenvolvido parasubstituirosformatos maisantigos tais omoo GIF epara
ser utilizado em apli ações de visualização online (WWW - World Wide Web). O PNG
é bastante robusto, pois para além de permitir uma veri ação da integridade do heiro,
onsegue dete tar oserrosde transmissão mais omuns [55 , 61℄.
4.2.3 A norma JPEG-LS
AnormaJPEG-LS(ISO-14495-1/ITU-T.87) foidesenvolvida peloJoint Photographi
Ex-perts Group (JPEG) omo obje tivo de providen iar um odi ador de imagens, lossless ou
near-lossless, mais e iente do que o Lossless JPEG, reduzindo a omplexidade do mesmo e
os requisitos de memória ne essários. A Parte 1 da norma foi nalizada em 1999. Existem
determinadas apli açõesemqueporvezes épreferívelterumalgoritmo de ompressão menos
omplexo do queum queofereça melhores taxas de ompressão. Foi entãoneste sentido que
oJPEG-LSfoidesenvolvido [68,98 ,99℄.
Váriosalgoritmos de ompressão foram propostos paraintegrarem a norma JPEG-LS. O
omitéresponsável, apósumalonga fase de testes, elegeu o LOCO-I (LOssless COmpression
for Images) dos Laboratórios daHewlett-Pa kard [30℄ omoo melhor algoritmo. Havia mais
propostas, omo o CALIC, FELICS e o CREW da Ri oh, mas LOCO-I saiu ven edor. O
LOCO-I, para além de ofere er boas taxas de ompressão, é relativamente fá il e rápido
de implementar [39, 80 ℄. Este algoritmo baseia-se num modelo de previsão residual e num
ontexto adaptativo para a odi ação de resíduos. A baixa omplexidade desta té ni a
provém do pressuposto que a previsão residual segue uma distribuição geométri a e do uso
de ódigos de Golomb (verSe ção 5.1.6), que sãoóptimos paraeste tipo de distribuições. O
JPEG-LS também tem in orporado ummodo lossy onde podemos ontrolar o erro absoluto
máximo no odi ador. Este modo é mais onhe ido por near-lossless ompression ou L
∞
- onstrained ompression [55℄.