Videotömörítés

A videotömörítés az adatok tömörítésének egyik módszere , amelynek célja az adatmennyiség csökkentése, minimalizálva a videó vizuális minőségére gyakorolt ​​hatást . A videotömörítés előnye, hogy csökkenti a videofájlok tárolásának és továbbításának költségeit.

Történelem és szabványok

Az első videotömörítési kísérlet az 1950-es évekig nyúlik vissza , de az 1980-as évektől kezdve jelentek meg az első életképes megoldások. Az első videó szabvány a H.120 , amelyet 1984-ben adott ki a CCITT . Ez az első szabvány a DPCM technikát használja , és funkcionalitása nagyon korlátozott: a maximális bitsebesség 2 Mbit / s, csak a szürke szint és a nem megfelelő minőség.

A szabványosító szervezetek nagyon fontos szerepet játszanak a videotömörítési technikák fejlődésében és terjesztésében. A CCITT kezdeményezte az 1980-as években, majd utódja az ITU-T . Ezeket a szabványosítási tevékenységeket az ITU-R koordinálja , majd az ISO és az IEC követi .

A videotömörítő algoritmusok alapjai

A videoszekvenciák nagyon magas statisztikai redundanciát tartalmaznak, mind az időbeli, mind a térbeli tartományban.

A tömörítési technikák alapjául szolgáló alapvető statisztikai tulajdonság a pixelek közötti korreláció . Ez az összefüggés egyszerre térbeli, az aktuális kép szomszédos képpontjai hasonlóak, és időbeliak, a múltbeli és a jövőbeli képek képpontjai is nagyon közel vannak az aktuális képponthoz.

Feltételezzük tehát, hogy a kép egy adott pixelének fontossága megjósolható ugyanazon kép szomszédos pixeleiből (képen belüli kódolási technikák alkalmazásával) vagy szomszédos kép pixeleiből (képközi technikák alkalmazásával). Intuitív módon egyértelmű, hogy bizonyos körülmények között, például egy videoszekvencia felvételének megváltoztatása során a szomszédos képek közötti pixelek időbeli korrelációja kicsi, vagy akár nulla is. Ebben az esetben az úgynevezett belső kódolási technikák a legalkalmasabbak a térbeli összefüggés kihasználására a hatékony adattömörítés elérése érdekében.

MPEG típusú videó tömörítési algoritmusok használata transzformáció nevű DCT (a diszkrét koszinusz transzformációt , vagy a „  diszkrét koszinusz transzformáció  ”), a blokkok 8 × 8 pixeles, hogy hatékonyan elemezni térbeli összefüggéseinek szomszédos pixelek ugyanazt a képet. Más módszereket is javasoltak, fraktálok , hullámok , vagy akár egyeztetés céljából .

Azonban, ha a szomszédos képkockákban a pixelek közötti korreláció magas, vagyis azokban az esetekben, amikor két egymást követő képkocka hasonló vagy azonos tartalommal rendelkezik, kívánatos például egy úgynevezett Inter kódolási technikát alkalmazni . Például a DPCM ( Differenciális PCM ), amely időbeli előrejelzést (a keretek közötti mozgás kompenzált előrejelzését) használ.

A videotömörítés klasszikus sémájában a két információ (időbeli és térbeli) mozgása közötti adaptív kombinációt alkalmazzák a jelentős adattömörítés elérésére (DPCM / DCT hibrid videó kódolás).

Alulmintavétel és interpoláció

Az ebben a részben ismertetett tömörítési technikák többsége (helytelenül kódolásnak hívják, mert információvesztés van) mintavételt és kvantálást végez az információ kódolása előtt. A lemásolás alapkoncepciója a videokép méreteinek (vízszintes és függőleges) csökkentése, és ezért a kódolandó pixelek számának csökkentése.

Néhány videóalkalmazás az időbeli mozgást is visszafogja a képkocka sebességének csökkentése érdekében a kódolás előtt. Ezért a vevőnek dekódolnia kell a képeket és interpolálnia kell őket, mielőtt megjelenítené őket.

Ezt a tömörítési technikát tekinthetjük az egyik legalapvetőbbnek, amely figyelembe veszi a szem fiziológiai jellemzőit, és amely eltávolítja a videoadatokban rejlő redundanciát.

Az emberi szem érzékenyebb a fényváltozásra, mint a színre. Emiatt szem hiba, a többség a videó tömörítési algoritmusok jelentik a képeket a YUV szín tér , amely magában foglalja az egyik összetevője a fényerőt és két chroma . Ezután a kromatikus komponenseket a fénysűrűség-komponensnek megfelelően csökkentik, egy adott alkalmazásra jellemző Y: U: V aránnyal (például MPEG-2-ben az arány 4: 1: 1 vagy 4: 2: 2).

Kompenzált mozgás előrejelzés

A mozgáskompenzált előrejelzés vagy a mozgáskompenzáció hatékony módszer a keretek közötti időbeli redundanciák csökkentésére, és az MPEG-1 és MPEG-2-ben használják a DPCM kódolás előrejelzésére. A mozgáskompenzáció fogalma a videoképek közötti mozgás becslésén alapul; ha egy videójelenet minden eleme térben közel van, akkor a keretek közötti mozgás korlátozott számú paraméterrel (pixel mozgásvektorok) írható le.

A pixel legjobb előrejelzését az előző képkocka előrejelzése adja. A mozgásinformációk kódolása a kép egyes pixeleire nem szükséges.

Ha a mozgási vektorok közötti térbeli korreláció elég magas, akkor egy mozgásvektor a szomszédos pixelek blokkját jelentheti.

Ezek a blokkok gyakran 16x16 pixeles csoportból állnak, és minden blokkhoz csak egy mozgásvektort becsülnek meg, kódolnak és továbbítanak.

Következtetés

A mozgáskompenzált predikciós technikák és a DCT transzformáció kombinációja meghatározható az MPEG típusú videotömörítés kulcselemeinek. A harmadik jellemző jellemző, hogy ezeket a technikákat kisméretű képblokkoknál alkalmazzák (gyakran 16x16 pixel a mozgáskompenzációhoz és 8x8 pixel a DCT kódoláshoz).

Ezen okok miatt az MPEG kódolás a hibrid DPCM / DCT algoritmusok része.

Az interframe kódolás alapdiagramja

Az MPEG-1 (és az MPEG-2) alapvető tömörítési technikája makroblokk-struktúrán alapul. Az algoritmus egy szekvencia első képkockáját kódolja kereten belüli kódolással (I keret). Minden egymást követő keretet keretközi predikció (P képkocka) segítségével kódolnak; csak az előzőleg kódolt keret adatait (I vagy P kereteket) kell felhasználni az előrejelzéshez. A keretek minden színét makrokockákra osztják fel.

Minden makro-blokk a fényességre és a krominanciára vonatkozó adatokat tartalmaz: 4 fényerő-blokk (Y1, Y2, Y3, Y4) és kettő a krominancia (U, V) esetében, mindegyik 8x8 pixeles; amely 4: 1: 1 arányt ad a fényerő és a kroma között.

A DCT / DPCM kódolás blokkvázlata

A videoszekvencia első kerete (I képkocka) az Intra-frame móddal van kódolva, a múltbeli vagy a jövőbeli képkockákra való hivatkozás nélkül. A DCT-t minden 8x8 fényerő- és színblokkra alkalmazzuk, a 64 DCT-együttható mindegyikét egységesen kvantáljuk (Q). A számszerűsítés után a kisebb együtthatót (folyamatos együttható, DC néven) másképp kezeljük, mint a többit (AC együtthatók). A DC együttható megfelel a blokk átlagos intenzitásának, és DC differenciál predikciós módszerrel van kódolva. A nem nulla együtthatók többi részét ezután cikk-cakk kódolással látjuk el, mint a JPEG kódolásban.

A DCT / DPCM dekódolás blokkvázlata

A dekóder fordított műveletet hajt végre. Először az egyes blokkokhoz tartozó különböző DCT-együtthatók adatainak kinyerésével és dekódolásával kezdődik. A nem nulla együtthatók rekonstrukciójával (Q *) elvégzi az inverz DCT-t (DCT -1 ), és a blokkok pixeljeinek kvantálási értékei helyreállnak. Az egyes képek összes blokkját dekódoljuk és rekonstruáljuk.

A P keretek kódolásához az előző N-1 képkockákat (I vagy P keretek) ideiglenesen az FS (frame store) tárolja. A mozgáskompenzációt (MC) makroblokkok alapján hajtják végre. A video -puffer (VB) biztosítani kell, a konstans bitráta a videó stream.

Töltési feltételek

Az MPEG-1 algoritmus által biztosított szolgáltatás az a lehetőség, hogy a makro-blokkok információit csak szükség esetén frissítsék a dekóderre (ha egy blokk tartalma megváltozik az előző kép azonos blokkjának tartalmához képest). Az alacsony másodpercenkénti bitsebességgel rendelkező videoszekvenciák hatékony kódolásának kulcsa a predikciós algoritmus helyes megválasztása. Az MPEG szabvány főleg három módszert különböztet meg (MB típusok):

Az MPEG-1 jellemzői

A médiatámogatáshoz való hozzáférés érdekében az MPEG-1 algoritmust úgy tervezték meg, hogy támogassa a különféle funkciókat, például a véletlenszerű hozzáférést, a gyors előre keresést (FF-gyors előre) és a visszafelé (FR-gyors visszafelé) a videofolyamban stb.

Ezen jellemzők beépítése, valamint a mozgáskompenzáció és a mozgásinterpoláció további előnyeinek kihasználása érdekében az MPEG-1 algoritmus bevezeti az előrejelzett és kétirányúan interpolált képek (B-keretek) fogalmát.

Háromféle keretet veszünk figyelembe:

A felhasználó az alkalmazás igényeinek megfelelően rendezheti a különböző típusú keretek sorrendjét. Általában csak az I (IIIII ...) keretekkel kódolt videoszekvencia nagyfokú véletlenszerű hozzáférést, FF / FR és szerkesztést biztosít, de nagyon alacsony tömörítési arányt biztosít. Csak P-keretekkel kódolt videósorozat (IPPPPPPIPPPPP ...) Közepes fokú véletlenszerű hozzáférést és FF / FR-t tesz lehetővé.

Ha a három típusú keretet használjuk (IBBPBBPBBIBBP ....), akkor magas tömörítési arányt és ésszerű mértékű véletlenszerű hozzáférést és FF / FR-t kapunk, de jelentősen megnöveljük a kódolási időt. Az olyan alkalmazásoknál, mint a videotelefon vagy a videokonferencia, ez az idő tűrhetetlenné válhat.

MPEG-2

Az MPEG-2 algoritmust úgy tervezték, hogy minősége legalább egyenértékű legyen az NTSC / PAL minőségével és jobb legyen, mint a CCIR 60 .

Alapvetően az MPEG-2 algoritmusa megegyezik az MPEG-1 algoritmusával, ezért kompatibilis. Minden MPEG-2 dekódernek képesnek kell lennie egy érvényes MPEG-1 videofolyam dekódolására. Számos algoritmust adtak hozzá, hogy alkalmazkodjanak az új igényekhez. Az MPEG-2 az átlapolt képek feldolgozására szolgál.

Az MPEG-2 bevezeti a "profilok" és a "szintek" fogalmát, hogy kompatibilisek legyenek olyan rendszerekkel, amelyek nem valósítják meg ezeket a funkciókat.

Minden szint meghatározza a kódoláshoz hasznos különböző paraméterek körét.

A fő szint maximális sűrűségét 720 pixel vízszintesen és 576 pixelt függőlegesen, 30 kép / másodperces képsebességet és 15 Mbit / s sebességet támogatja.

Bibliográfia

Kapcsolódó cikkek

Megjegyzések és hivatkozások

  1. Christine Fernandez-Maloigne, Frédérique Robert-Inacio, Ludovic Macaire, Digital Color: megszerzés, észlelés, kódolás és renderelés , Paris, Lavoisier, coll.  „IC2 szerződés”, 348.  o. ( ISBN  978-2-7462-2555-8 ) , p.  249

Külső linkek