Az FMUSER Wirless könnyebben továbbítja a videót és a hangot!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> albán
ar.fmuser.org -> arab
hy.fmuser.org -> örmény
az.fmuser.org -> azerbajdzsán
eu.fmuser.org -> baszk
be.fmuser.org -> belorusz
bg.fmuser.org -> bolgár
ca.fmuser.org -> katalán
zh-CN.fmuser.org -> kínai (egyszerűsített)
zh-TW.fmuser.org -> kínai (hagyományos)
hr.fmuser.org -> horvát
cs.fmuser.org -> cseh
da.fmuser.org -> dán
nl.fmuser.org -> holland
et.fmuser.org -> észt
tl.fmuser.org -> filippínó
fi.fmuser.org -> finn
fr.fmuser.org -> francia
gl.fmuser.org -> galíciai
ka.fmuser.org -> grúz
de.fmuser.org -> német
el.fmuser.org -> Görög
ht.fmuser.org -> haiti kreol
iw.fmuser.org -> héber
hi.fmuser.org -> hindi
hu.fmuser.org -> magyar
is.fmuser.org -> izlandi
id.fmuser.org -> indonéz
ga.fmuser.org -> ír
it.fmuser.org -> olasz
ja.fmuser.org -> japán
ko.fmuser.org -> koreai
lv.fmuser.org -> lett
lt.fmuser.org -> litván
mk.fmuser.org -> macedón
ms.fmuser.org -> maláj
mt.fmuser.org -> máltai
no.fmuser.org -> norvég
fa.fmuser.org -> perzsa
pl.fmuser.org -> lengyel
pt.fmuser.org -> portugál
ro.fmuser.org -> román
ru.fmuser.org -> orosz
sr.fmuser.org -> szerb
sk.fmuser.org -> szlovák
sl.fmuser.org -> Szlovén
es.fmuser.org -> spanyol
sw.fmuser.org -> szuahéli
sv.fmuser.org -> svéd
th.fmuser.org -> Thai
tr.fmuser.org -> török
uk.fmuser.org -> ukrán
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnámi
cy.fmuser.org -> walesi
yi.fmuser.org -> jiddis
Előszó
A H264 videotömörítési algoritmus kétségtelenül a legszélesebb körben használt és legnépszerűbb az összes videotömörítési technika közül. Az olyan nyílt forráskódú könyvtárak bevezetésével, mint az x264 / openh264 és az ffmpeg, a legtöbb felhasználónak már nem kell túl sokat kutatnia a H264 részleteiről, ami jelentősen csökkenti a H264-et használók költségeit.
De a H264 megfelelő kihasználása érdekében még mindig ki kell derítenünk a H264 alapelveit. Ma megnézzük a H264 alapelveit.
H264 áttekintés
A H264 tömörítési technológia elsősorban a következő módszereket alkalmazza a videoadatok tömörítésére. tartalmazza:
Kereten belüli predikciós tömörítés megoldja a térbeli adatok redundanciájának problémáját.
A képkockák közötti előrejelzés tömörítése (mozgásbecslés és kompenzáció) megoldja az időtartományi adatok redundanciájának problémáját.
Egész diszkrét koszinusz-transzformáció (DCT), amely a térbeli összefüggést lényegtelen adatokká alakítja a frekvenciatartományban, majd kvantálja.
CABAC tömörítés.
A tömörített keret az alábbiakra oszlik: I keret, P keret és B keret:
I keret: kulcs keret, kereten belüli tömörítési technológiával.
P keret: előre mutató referenciakeret tömörítéskor csak az előzőleg feldolgozott keretre vonatkozik. Használjon keret hangtömörítési technológiát.
B keret: Kétirányú referenciakeret. A tömörítés során az előző képkockára és a következő képkockára vonatkozik. Keretek közötti tömörítési technológia használata.
Az I / P / B keretek mellett vannak GOP képsorok is.
GOP: Két I képkocka között van egy képsor, és csak egy I keret van egy képsorban. Az alábbiak szerint:
Most részletesen leírjuk a H264 tömörítési technológiát.
H264 tömörítési technológia
A H264 alapelve valójában nagyon egyszerű, írjuk le röviden a H264 adatok tömörítésének folyamatát. A kamera által rögzített videokeretek (30 képkocka / másodperces sebességgel számolva) a H264 kódoló pufferjébe kerülnek. A kódolónak először el kell osztania az egyes képek makroblokkjait.
Vegyük példaként a következő képet:
Partíció makroblokk
A H264 alapértelmezés szerint 16X16-os területet használ makróblokkként, és 8X8-as méretre is felosztható.
A makróblokk felosztása után számítsa ki a makroblokk pixelértékét.
Analógia útján a kép minden egyes makroblokkjának pixelértékét kiszámítják, és az összes makroblokkot az alábbiak szerint dolgozzák fel.
Alblokk
A H264 16X16-os makroblokkokat használ a viszonylag lapos képekhez. A nagyobb tömörítési arány elérése érdekében azonban a kisebb alblokkok 16X16-os makroblokkokra is feloszthatók. Az alblokk mérete 8X16, 16X8, 8X8, 4X8, 8X4, 4X4 lehet, ami nagyon rugalmas.
A fenti képen a piros keretben található 16X16-os makroblokkok többsége kék háttérrel rendelkezik, és a három sas képének egy része ebben a makroblokkban rajzolódik ki. A három sas részképeinek jobb feldolgozása érdekében a H264 Több blokkot 16X16-os makroblokkokra osztjuk.
Ily módon a kereten belüli tömörítés után hatékonyabb adatok nyerhetők. Az alábbi ábra a fenti makroblokkok tömörítésének eredménye, ill. Mpeg-2 és H264 alkalmazásával. A bal fele az MPEG-2 alblokk osztás utáni tömörítés eredménye, a jobb fele pedig a H264 alblokk tömörítés eredménye. Látható, hogy a H264 osztási módszernek több előnye van.
A makro blokk felosztása után a H264 kódoló puffer összes képe csoportosítható.
Keret csoportosítás
A videoadatok esetében főként kétféle adatredundancia létezik, az egyik az időbeli redundancia, a másik pedig a térbeli redundancia. Közülük az időbeli adatredundancia a legnagyobb. Először beszéljünk a videó adatidő redundancia problémájáról.
Miért a legnagyobb az időredundancia? Feltéve, hogy a kamera másodpercenként 30 képet rögzít, ennek a 30 képnek az adatai többnyire összefüggenek. Az is lehetséges, hogy több mint 30 képkocka, több tíz képkocka vagy több száz képkockázat különösen szorosan kapcsolódik egymáshoz.
Ezekhez a nagyon szorosan kapcsolódó képkockákhoz valójában csak egy adatkockát kell mentenünk, és ebből a keretből más szabályok is megjósolhatók bizonyos szabályok szerint, így a videó adatoknak van a legtöbb időredundanciája.
Annak elérése érdekében, hogy a releváns keretek tömörítsék az adatokat a predikciós módszerrel, csoportosítani kell a videokereteket. Tehát hogyan lehet megállapítani, hogy bizonyos keretek szorosan kapcsolódnak egymáshoz és csoportosíthatók? Nézzünk meg egy példát. Az alábbiakban egy mozgásban lévő biliárdgolyó-csoport rögzített videoképe látható. A biliárdgolyók a jobb felső saroktól a bal alsó sarokig gurulnak.
A H264 kódoló minden alkalommal két szomszédos keretet vesz ki a makroblokkok összehasonlítására a két kép hasonlóságának kiszámításához. Az alábbiak szerint:
A makro blokk szkennelés és a makró blokk keresés révén megállapítható, hogy a két képkocka közötti összefüggés nagyon magas. Továbbá azt tapasztalták, hogy ennek a keretcsoportnak a korrelációs foka nagyon magas. Ezért a fenti keretek egy csoportra oszthatók. Az algoritmus a következő: a szomszédos képeken az általában eltérő pixelek csak 10% -on belül vannak, a fényerő-különbség nem haladja meg a 2% -ot, a színbeli különbség pedig csak 1% -on belül változik. Szerintünk ez A grafikonok csoportosíthatók.
Egy ilyen keretcsoportban a kódolás után csak az első üzenet teljes adatait tároljuk, a többi képkockát pedig az előző képkockára hivatkozva számoljuk. Az első képkockát IDR / I keretnek, más képkockákat pedig P / B keretnek hívjuk, így a kódolt adatkeret csoportot GOP-nak hívjuk.
Mozgásbecslés és kompenzáció
Miután a kereteket a H264 kódolóba csoportosították, ki kell számítani a keretcsoportban lévő objektumok mozgásvektorait. A fenti mozgó biliárd videokeretet példaként véve nézzük meg, hogyan számolja ki a mozgásvektort.
A H264 kódoló először két képkockát vesz ki a puffer fejlécéből egymás után, majd makro blokk szkennelést végez. Ha egy tárgy található az egyik képen, a keresés a másik kép közelében történik (a keresési ablakban). Ha az objektum ekkor egy másik képen található, akkor az objektum mozgásvektora kiszámítható. A következő képen látható a biliárdgolyó helyzete keresés után.
A fenti képen lévő biliárdgolyók helyzete közötti különbség révén kiszámítható az asztalkép iránya és távolsága. A H264 felveszi a labda mozgásának távolságát és irányát az egyes képkockákban, és ez a következővé válik.
A mozgásvektor kiszámítása után ugyanazt a részt (vagyis a zöld részt) kivonjuk a kompenzációs adatok megszerzéséhez. Végül csak a kompenzációs adatokat kell tömörítenünk és mentenünk, majd dekódoláskor az eredeti kép visszaállítható. A tömörített adatoknak csak kis mennyiségű adatot kell rögzíteniük. Alábbiak szerint:
A mozgásvektort és a kompenzációt keretközi tömörítési technológiának nevezzük, amely időben megoldja a videoképek adatredundanciáját. A képkockák közötti tömörítés mellett az adatok tömörítését is el kell végezni a kereten belül. Kereten belüli adattömörítés megoldja a térbeli adatok redundanciáját. Most bemutatjuk a kereten belüli tömörítési technológiát.
Intra jóslat
Az emberi szem bizonyos mértékben felismeri a képet, nagyon érzékeny az alacsony frekvencia fényerejére, és nem túl érzékeny a nagy frekvencia fényerejére. Ezért néhány kutatás alapján az emberi szemre nem érzékeny adatok eltávolíthatók a képről. Ily módon az intra predikciós technológiát javasolják.
A H264 kereten belüli tömörítése nagyon hasonló a JPEG-hez. Miután egy képet makroblokkokra osztottunk, mindegyik makroblokk előrejelezhető 9 módban. Keresse meg az eredeti képhez legközelebb eső előrejelzési módot.
A következő kép az egyes makróblokkok előrejelzésének folyamata a teljes képben.
Az intra predikció utáni kép és az eredeti kép összehasonlítása a következő:
Ezután az eredeti képet és az előre megjósolt képet kivonjuk a maradék érték megszerzéséhez.
Ezután mentse el az előre megjósolt üzemmód adatait, amelyeket korábban kaptunk, hogy dekódoláskor visszaállíthassuk az eredeti képet. A hatás a következő:
Kereten belüli és képkockák közötti tömörítés után, bár az adatok nagymértékben csökkentek, még mindig van hely az optimalizálásra.
Végezze el a DCT-t a maradék adatokon
A maradék adatokat egész diszkrét koszinusz-transzformációnak vethetjük alá, hogy eltávolítsuk az adatok összefüggését és tovább tömörítsük az adatokat. Amint az az alábbi ábrán látható, a bal oldal az eredeti adatok makróblokkja, a jobb oldal pedig a számított maradékadatok makróblokkja.
A maradék adatok makroblokkját digitalizáljuk az alábbi ábra szerint:
A DCT konverziót a maradék adat makroblokkon hajtják végre.
A társított adatok eltávolítása után láthatjuk, hogy az adatok tovább tömörülnek.
A DCT elkészülte után ez nem elég, és a veszteségmentes tömörítéshez CABAC szükséges.
CABAC
A fenti kereten belüli tömörítés veszteséges tömörítési technika. Más szavakkal, a kép tömörítése után nem lehet teljesen visszaállítani. A CABAC egy veszteségmentes tömörítési technológia.
A veszteségmentes tömörítési technológia lehet a legismertebb mindenki számára: a Huffman kódolás, egy rövid kód a magas frekvenciájú szavakhoz, egy hosszú kód az alacsony frekvenciájú szavakhoz az adattömörítés céljának elérése érdekében. Az MPEG-2-ben használt VLC ez a fajta algoritmus, példaként az AZ-t vesszük, A nagyfrekvenciás adatokhoz, Z pedig alacsony frekvenciájú adatokhoz tartozik. Nézze meg, hogyan történik.
A CABAC egy rövid kód a nagyfrekvenciás adatokhoz és egy hosszú kód az alacsony frekvenciájú adatokhoz. Ugyanakkor kontextus alapján tömörít, ami sokkal hatékonyabb, mint a VLC. A hatás a következő:
Most cserélje le az AZ-t videokerettel, és a következőképpen fog kinézni.
A fenti képből nyilvánvaló, hogy a CACBA-t használó veszteségmentes tömörítési séma sokkal hatékonyabb, mint a VLC.
összefoglalás
Ezen a ponton befejeztük a H264 kódolási elvet. Ez a cikk elsősorban a következő pontokról szól:
1. Jianyin néhány alapfogalmat vezetett be a H264-ben. Ilyen például az I / P / B keret, a GOP.
2. Részletesen elmagyarázta a H264 kódolás alapelveit, beleértve:
Makró blokk felosztás
Képcsoportosítás
Kereten belüli tömörítési technológia elve
A képkockák közötti tömörítési technológia elve.
DCT
CABAC tömörítési elv.
|
Írja be az e-mail címet a meglepetéshez
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikaans
sq.fmuser.org -> albán
ar.fmuser.org -> arab
hy.fmuser.org -> örmény
az.fmuser.org -> azerbajdzsán
eu.fmuser.org -> baszk
be.fmuser.org -> belorusz
bg.fmuser.org -> bolgár
ca.fmuser.org -> katalán
zh-CN.fmuser.org -> kínai (egyszerűsített)
zh-TW.fmuser.org -> kínai (hagyományos)
hr.fmuser.org -> horvát
cs.fmuser.org -> cseh
da.fmuser.org -> dán
nl.fmuser.org -> holland
et.fmuser.org -> észt
tl.fmuser.org -> filippínó
fi.fmuser.org -> finn
fr.fmuser.org -> francia
gl.fmuser.org -> galíciai
ka.fmuser.org -> grúz
de.fmuser.org -> német
el.fmuser.org -> Görög
ht.fmuser.org -> haiti kreol
iw.fmuser.org -> héber
hi.fmuser.org -> hindi
hu.fmuser.org -> magyar
is.fmuser.org -> izlandi
id.fmuser.org -> indonéz
ga.fmuser.org -> ír
it.fmuser.org -> olasz
ja.fmuser.org -> japán
ko.fmuser.org -> koreai
lv.fmuser.org -> lett
lt.fmuser.org -> litván
mk.fmuser.org -> macedón
ms.fmuser.org -> maláj
mt.fmuser.org -> máltai
no.fmuser.org -> norvég
fa.fmuser.org -> perzsa
pl.fmuser.org -> lengyel
pt.fmuser.org -> portugál
ro.fmuser.org -> román
ru.fmuser.org -> orosz
sr.fmuser.org -> szerb
sk.fmuser.org -> szlovák
sl.fmuser.org -> Szlovén
es.fmuser.org -> spanyol
sw.fmuser.org -> szuahéli
sv.fmuser.org -> svéd
th.fmuser.org -> Thai
tr.fmuser.org -> török
uk.fmuser.org -> ukrán
ur.fmuser.org -> urdu
vi.fmuser.org -> Vietnámi
cy.fmuser.org -> walesi
yi.fmuser.org -> jiddis
Az FMUSER Wirless könnyebben továbbítja a videót és a hangot!
Kapcsolat
Cím:
No. 305 szoba HuiLan épület No.273 Huanpu Road Guangzhou, Kína 510620
Kategóriák
Hírlevél