MPEG


Principiile codificãrii MPEG

Numerizarea secventelor audio si video solicitã resuse considerabile de memorie. Spre exemplu, pentu o secundã de video numeric necompresat (25 imagini/sec; rezolutie 640x480 pixeli; 24 biti/pixel) avem nevoie de circa 22 Mo la care trebuie sã mai adãugãm 5 Mo pentru sunet (esantionare la 44 KHz, quantificare pe 16 biti). Deci 27 Mo pentru o singurã secundã! Un CD-ROM poate înregistra în aceste conditii circa 24 de secunde de video. La citire imaginile nu vor fi afisate cu o frecventã de 24 imagini/sec si nici nu putem vorbi de sincronizare între imagine si sunet. De ce? Pentru simplul motiv cã rata de transfer a unui CD-ROM este limitatã (150 Ko/sec pentru cititoarele simplã vitezã). Pentru a folosi CD-ROM-ul ca suport pentru video numeric se impune compresarea secventelor video astfel încât debitul de transfer necesar sã nu depãseascã rata de transfer a unui CD-ROM (o compresie de aproape 200:1).

ISO (International Standardization Organization) si IEC (International Electrotechnical Commission) a reunit în 1988 Moving Picture Expert Group (MPEG), o echipã de experti având ca obiectiv dezvoltarea unui standard de codificare a imaginilor animate pentru suporturile numerice de stocaj (în principal CD-ROM, DAT si discuri dure), la un debit de circa 1,5 Mbiti/s.

Aplicatiile vizate de ISO (spre exemplu bãncile de imagini, enciclopediile multimedia, videotext multimedia) au impus restrictii specifice asupra algoritmilor de codificare: functiile avans rapid - retur rapid si acces aleatoar impun ca, de regulã, imaginile sã nu fie codificate în mod predictiv. Formatul sursei de imagini este relativ flexibil, permitând vizualizarea pe televizoare cu 525 sau 625 de linii, pe microcalculatoare sau pe statii de lucru.

Tehnicile de reducere a debitului numeric necesar transmiterii imaginilor animate se bazeazã pe existenta unor puternice corelatii spatio-temporale în video (codificare statisticã) si pe posibilitãtile de modificare a semnalului tinându-se seama de perceptia sa vizualã (codificare psiho-vizualã). Pentru codificãrile cu debite joase (sub 2 Mbiti/s), performantele de atins în termen de factor de compresie sau numãr de biti pe punct, implicã utilizarea unui ansamblu de tehnici diverse.

Bazate pe structura normei H.261, lucrãrile grupului MPEG s-au concretizat într-o primã etapã la sfârsitul anului 1992, prin publicarea normei ISO 11172, recunoscutã sub denumirea MPEG-1. Debitul numeric al imaginilor video compresate dupã standardul MPEG-1 a fost fixat la 1,5 Mbiti/s (1,15 Mbiti/s pentru video propriu-zis si diferenta pânã la 1,5 Mbiti/s pentru alte medii, ca de exepmlu sunetul pentru MUSICAM). Aceastã limitare a fost fãcutã din dorinta de a asigura compatibilitatea cu rata de transfer a cititoarelor CD-ROM, putându-se astfel dezvolta aplicatii multimedia cu stocarea secventelor video. Principiul de compresie este acelasi ca la standardul JPEG, transformata prin cosinus discret (DCT), dar în loc sã se compreseze fiecare imagine ca o entitate unicã, pentru fiecare bloc de 8x8 pixeli se transmit numai diferentele fatã de blocul corespondent din imaginea precedentã. De aceea codificarea se numeste interframe.

Pentru a fi si mai eficient, algoritmul MPEG-1 foloseste o tehnicã de compensare a miscãrii (motion compensation) prin care o imagine predictivã este definitã pe baza vectorilor de deplasare a blocurilor de 8x8 pixeli evaluati pentru imaginile precedente. Chiar cu aceastã tehnicã de compensare a miscãrii, debitul numeric obtinut este încã foarte ridicat.

Au fost definite trei tipuri de imagini:

- imagine de tip I (intra picture), imagine putin compresatã (dupã un algoritm identic cu standardul JPEG); reconstituirea sa la citire nu depinde de alte imagini. Într-o secventã MPEG, prima imagine este întotdeauna o imagine intra deci o imagine de referintã care contine descrierea completã a imaginii sursã. Ea va servi de referintã pentru calculul altor imagini si în timpul acceselor aleatoare într-o lecturã rapidã de tip magnetoscop (similar notiunii "keyframe" pentru QuickTime). O imagine I apare la 10-15 imagini;

- imagine de tip P (predicted picture), imagine codificatã pornind de la o imagine intra precedentã pe baza vectorilor de deplasare a blocurilor de 8x8 pilxeli si cu o corectie de eroare asupra continutului din bloc. Sunt luate în considerare numai diferentele fatã de imaginea de referintã. O imagine de tip P va servi la rândul ei ca referintã pentru codificarea unei alte imagini P. În general, se foloseste o imagine P la trei imagini;

- imagine de tip B (bi-directionnelle), imagine reconstruitã de sistemul de decodificare pornind de la imaginile de tip I si P, pecedente si urmãtoare, prin interpolarea deplasãrii (se mai numesc si imagini interpolate). Sunt imaginile cele mai puternic compresate si continutul lor nu este transmis pe retea. De aceea este imposibil de accesat o imagine B înaintea decompresãrii unei imagini I si a unei imagini P.

Trebuie remarcat faptul cã ordinea de transmitere a imaginilor nu respectã ordinea lor normalã de afisare. Astfel, pentru o compresie care foloseste o imagine intra la 12 imagini si o imagine de tip P la 3 imagini, ordinea de transmitere este: I(1), P(4), B(2), B(3), P(7), B(5), B(6), P(10), B(8), B(9), I(13), B(11), B(12)...

 

Fig. 14. Tipuri de imagini MPEG

Imaginile 1 si 13 sunt imagini de tip I, codificate independent. Nu este nevoie de predictia imaginilor vecine pentru a fi decodificate imaginile de tip I si, prin urmare, accesul la aceste imagini pe unitatea de stocaj va fi imediat.

Imaginile 4, 7 si 10 sunt imagini de tip P, imagini prezise pe seama imaginilor intra sau pe seama imaginilor prezise anterior. Imaginea 4 poate fi codificatã folosind diferenta dintre imaginile 4 si 1. Imaginea 7 poate fi codificatã folosind diferenta dintre imaginile 7 si 4. Pentru a ajunge la imaginea 7, pe suport va trebui sã cãutãm imaginea 1, apoi imaginea 4 si, în sfârsit, imaginea 7.

Celelalte imagini sunt interpolate, deci calculate în raport cu imaginile prezise (P) sau intra (I) vecine. De exemplu, imaginea 2 poate fi calculatã utilizând una din diferentele: a) 2 - 1; b) 2 - 4; c) 2 - (1 + 4) / 2. Pentru imaginea 9 este nevoie sã fie decodificate întâi imaginile 1, 4, 7,10 si abia apoi va putea fi decofificatã 9 (trebuiesc decodificate 5 imagini pentru a afisa imaginea 9).

Algoritmul MPEG-1 este un algoritm de tip asimetric: codificarea este mult mai complexã (si ca urmare de patru ori mai lungã în timp) decât decodificarea. Metoda de codificare folositã la MPEG-1 face parte din clasa generalã a algoritmilor hibrizi de predictie-transformare. Acest tip de codificare este cel mai bun între cele cunoscute azi pentru reducerea debitului numeric al imaginilor. Formatul de imagine pentru care s-a optat, un format SIF (Standard Image File) cu o rezolutie de 288 de linii cu 352 puncte video neîntretesute pentru PAL, respectiv 240x352 pixeli pentru NTSC, permite chiar el o reducere importantã a debitului pãstrând în acelasi timp o rezolutie suficientã. Prin interpolare ulterior se face afisarea pe întregul ecran.

Pentru efectuarea calculelor imaginea de referintã este împãrtitã în patrate de 16x16 pixeli numite macro-blocuri. Toate celelalte imagini sunt si ele divizate în macro-blocuri. La codificarea imaginilor P sau B, sistemul comparã macro-blocurile acestora cu macro-blocurile corespunzãtoare imaginii de referintã. Numai macro-blocurile care prezintã diferente sunt luate în considerare la codificare (pentru un interviu spre exemplu, fundalul este mereu acelasi; el va fi codificat pentru imaginea intra iar pentru imaginile urmãtoare se vor lua în calcul numai diferentele).

Secventele video compresate MPEG pot fi ulterior înregistrate pe CD-ROM, pe CD-I sau pe Video-CD (a nu se confunda cu CD-Video). Specificatiile de codificare depind de tipul de suport care va fi utilizat. Astfel pentru aplicatiile pe CD-ROM la codificarea MPEG se va tine seama de caracteristicile plãcii de decompresie si de viteza de lecturã a cititoarelor CD-ROM. În schimb, pentru un Video-CD este nevoie sã se respecte specificatiile din White Book.

În iulie 1994, ISO a omologat standardul MPEG-2. El este destinat teledifuziunii, în principal prin satelit, cu o calitate broadcast. Din start exigentele sunt diferite: formatul pentru MPEG-2 este de 720x480 pixeli (CCIP 601); debitul de transfer este superior (pânã la 40 Mbiti/sec). Nu se pune problema comparãrii calitãtii celor douã standarde întrucât ele au destinatii diferite: MPEG-1 pentru video numeric pe CD; MPEG-2 pentru televiziune.