FMUSER Wirless pārraida video un audio vieglāk!
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikands
sq.fmuser.org -> albāņu
ar.fmuser.org -> arābu
hy.fmuser.org -> armēņu
az.fmuser.org -> azerbaidžāņu
eu.fmuser.org -> basku valoda
be.fmuser.org -> baltkrievu
bg.fmuser.org -> bulgāru valoda
ca.fmuser.org -> katalāņu
zh-CN.fmuser.org -> ķīniešu (vienkāršotā)
zh-TW.fmuser.org -> ķīniešu (tradicionālā)
hr.fmuser.org -> horvātu
cs.fmuser.org -> čehu
da.fmuser.org -> dāņu
nl.fmuser.org -> holandiešu
et.fmuser.org -> igauņu
tl.fmuser.org -> filipīniešu
fi.fmuser.org -> somu
fr.fmuser.org -> franču valoda
gl.fmuser.org -> galisiešu valoda
ka.fmuser.org -> gruzīnu
de.fmuser.org -> vācu
el.fmuser.org -> grieķu
ht.fmuser.org -> Haiti kreolu
iw.fmuser.org -> ebreju
hi.fmuser.org -> hindi
hu.fmuser.org -> ungāru valoda
is.fmuser.org -> islandiešu
id.fmuser.org -> indonēziešu
ga.fmuser.org -> īru
it.fmuser.org -> itāļu
ja.fmuser.org -> japāņu
ko.fmuser.org -> korejiešu
lv.fmuser.org -> latviski
lt.fmuser.org -> lietuviešu
mk.fmuser.org -> maķedoniešu
ms.fmuser.org -> malajiešu
mt.fmuser.org -> maltiešu
no.fmuser.org -> norvēģu
fa.fmuser.org -> persiešu
pl.fmuser.org -> poļu
pt.fmuser.org -> portugāļu
ro.fmuser.org -> rumāņu
ru.fmuser.org -> krievu valoda
sr.fmuser.org -> serbu
sk.fmuser.org -> slovāku
sl.fmuser.org -> slovēņu
es.fmuser.org -> spāņu
sw.fmuser.org -> svahili
sv.fmuser.org -> zviedru
th.fmuser.org -> taizemiešu
tr.fmuser.org -> turku
uk.fmuser.org -> ukraiņu
ur.fmuser.org -> urdu valoda
vi.fmuser.org -> vjetnamiešu
cy.fmuser.org -> velsiešu
yi.fmuser.org -> jidišs
Priekšvārds
H264 video saspiešanas algoritms tagad neapšaubāmi ir visplašāk izmantotais un populārākais no visiem video saspiešanas paņēmieniem. Ieviešot atvērtā koda bibliotēkas, piemēram, x264 / openh264 un ffmpeg, lielākajai daļai lietotāju vairs nav jāveic pārāk daudz pētījumu par H264 detaļām, kas ievērojami samazina to cilvēku izmaksas, kuri lieto H264.
Bet, lai pareizi izmantotu H264, mums joprojām ir jāizdomā H264 pamatprincipi. Šodien mēs apskatīsim H264 pamatprincipus.
H264 pārskats
H264 saspiešanas tehnoloģija video datu saspiešanai galvenokārt izmanto šādas metodes. ietver:
Iekšējā kadra prognozēšanas saspiešana atrisina telpisko datu atlaišanas problēmu.
Starprāmju prognožu saspiešana (kustības novērtēšana un kompensācija) atrisina laika domēna datu atlaišanas problēmu.
Integer Discrete Cosine Transform (DCT), kas telpisko korelāciju pārveido par neatbilstošiem datiem frekvenču jomā un pēc tam to kvantizē.
CABAC saspiešana.
Saspiests rāmis ir sadalīts: I rāmī, P rāmī un B rāmī:
I rāmis: taustiņu rāmis, izmantojot kadra iekšējo saspiešanas tehnoloģiju.
P rāmis: uz priekšu balstīts rāmis, saspiežot, attiecas tikai uz iepriekš apstrādāto rāmi. Izmantojiet rāmja audio saspiešanas tehnoloģiju.
B rāmis: divvirzienu atsauces rāmis. Saspiešanas laikā tas attiecas uz iepriekšējo kadru un nākamo rāmi. Starpkadru saspiešanas tehnoloģijas izmantošana.
Papildus I / P / B rāmjiem ir arī attēlu secības GOP.
GOP: Starp diviem I rāmjiem ir attēlu secība, un attēlu secībā ir tikai viens I rāmis. Kā parādīts zemāk:
Tagad mēs detalizēti aprakstīsim H264 saspiešanas tehnoloģiju.
H264 saspiešanas tehnoloģija
H264 pamatprincips faktiski ir ļoti vienkāršs, īsi aprakstīsim datu saspiešanas procesu H264. Kameras uzņemtie video kadri (aprēķināti ar ātrumu 30 kadri sekundē) tiek nosūtīti uz H264 kodētāja buferi. Kodētājam vispirms jāsadala katram attēlam makrobloki.
Veikt šādu attēlu kā piemēru:
Sadalījuma makrobloks
H264 pēc noklusējuma izmanto makroblokā 16X16 apgabalu, un to var arī sadalīt 8X8 lielumā.
Pēc makro bloka sadalīšanas aprēķiniet makro bloka pikseļu vērtību.
Pēc analoģijas tiek aprēķināta katra attēla makrobloka pikseļu vērtība, un visi makrokloki tiek apstrādāti šādi.
Apakšbloks
H264 salīdzinoši plakaniem attēliem izmanto 16X16 makroblokus. Tomēr, lai sasniegtu lielāku saspiešanas pakāpi, mazākus apakšblokus var sadalīt arī 16X16 makroblokos. Apakšbloka lielums var būt 8X16, 16X8, 8X8, 4X8, 8X4, 4X4, kas ir ļoti elastīgi.
Iepriekš redzamajā attēlā lielākajai daļai 16X16 makrokloku sarkanajā rāmī ir zils fons, un daļa no trim ērgļiem ir attēlota šajā makroblokā. Lai labāk apstrādātu trīs ērgļu daļējos attēlus, H264 Vairāki apakšbloki tiek sadalīti 16X16 makroblokos.
Tādā veidā pēc kadra iekšējās saspiešanas var iegūt efektīvākus datus. Zemāk redzamais attēls ir iepriekš minēto makrobloku saspiešanas rezultāts, izmantojot attiecīgi mpeg-2 un H264. Kreisā puse ir saspiešanas rezultāts pēc MPEG-2 apakšbloku dalīšanas, un labā puse ir H264 apakšbloku saspiešanas rezultāts. Var redzēt, ka H264 dalīšanas metodei ir vairāk priekšrocību.
Pēc makro bloka sadalīšanas visus H264 kodētāja buferī esošos attēlus var sagrupēt.
Kadru grupēšana
Video datiem galvenokārt ir divu veidu datu atlaišana, viens ir datu atlaišana laikā, bet otrs - datu atlaišana kosmosā. Starp tiem datu atlaišana laikā ir vislielākā. Vispirms parunāsim par video datu laika atlaišanas problēmu.
Kāpēc laika atlaišana ir vislielākā? Pieņemot, ka kamera uzņem 30 kadrus sekundē, šo 30 kadru dati galvenokārt ir saistīti. Iespējams arī, ka vairāk nekā 30 datu kadri, desmitiem kadru vai simtiem datu kadru ir īpaši cieši saistīti.
Šiem ļoti cieši saistītiem kadriem faktiski mums ir jāsaglabā tikai viens datu kadrs, un no šī kadra saskaņā ar noteiktiem noteikumiem var paredzēt citus kadrus, tāpēc video datiem ir visvairāk laika atlaišanas.
Lai panāktu, ka attiecīgie rāmji saspiež datus, izmantojot prognozēšanas metodi, ir jāgrupē video rāmji. Tātad, kā noteikt, ka noteikti rāmji ir cieši saistīti un tos var grupēt kopā? Apskatīsim piemēru. Zemāk ir uzņemts video kadrs no biljarda bumbiņu grupas kustībā. Biljarda bumbiņas ripo no augšējā labā stūra uz apakšējo kreiso stūri.
H264 kodētājs katru reizi izņem divus blakus esošus kadrus, lai salīdzinātu makroblokus, lai aprēķinātu abu kadru līdzību. Kā parādīts zemāk:
Izmantojot makro bloku skenēšanu un makro bloku meklēšanu, var konstatēt, ka korelācija starp abiem kadriem ir ļoti augsta. Turklāt tiek konstatēts, ka šīs rāmju grupas korelācijas pakāpe ir ļoti augsta. Tādēļ iepriekš minētos rāmjus var sadalīt vienā grupā. Algoritms ir šāds: blakus esošajos attēlos parasti atšķirīgie pikseļi ir tikai 10% robežās, spilgtuma starpība nepārsniedz 2%, un krāsu atšķirība mainās tikai 1% robežās. Mēs to domājam. Grafikus var sagrupēt.
Šādā kadru grupā pēc kodēšanas mēs glabājam tikai pilnīgus pirmā ziņojuma datus, un citi kadri tiek aprēķināti, atsaucoties uz iepriekšējo kadru. Pirmo kadru mēs saucam par IDR / I kadru un citus kadrus, kurus mēs saucam par P / B kadriem, tāpēc kodēto datu kadru grupu saucam par GOP.
Kustības novērtēšana un kompensācija
Pēc kadru grupēšanas H264 kodētājā ir nepieciešams aprēķināt kadru grupas objektu kustības vektorus. Ņemot par piemēru iepriekš minēto kustīgo biljarda video rāmi, apskatīsim, kā tas aprēķina kustības vektoru.
H264 kodētājs vispirms no bufera galvenes secīgi izņem divus video datu kadrus un pēc tam veic makro bloku skenēšanu. Kad kādā no attēliem tiek atrasts objekts, meklēšana tiek veikta otra attēla tuvumā (meklēšanas logā). Ja objekts šajā laikā ir atrasts citā attēlā, tad var aprēķināt objekta kustības vektoru. Nākamajā attēlā parādīta biljarda bumbas atrašanās pēc meklēšanas.
Izmantojot atšķirību starp biljarda bumbiņu pozīcijām iepriekšējā attēlā, var aprēķināt galda attēla virzienu un attālumu. H264 pēc kārtas reģistrē bumbas kustības attālumu un virzienu katrā kadrā, un tas kļūst šāds.
Pēc kustības vektora aprēķināšanas tā pati daļa (tas ir, zaļā daļa) tiek atņemta, lai iegūtu kompensācijas datus. Galu galā mums ir jāsaspiež un jāsaglabā tikai kompensācijas dati, un pēc tam dekodējot var atjaunot sākotnējo attēlu. Saspiestajiem datiem ir jāreģistrē tikai neliels datu daudzums. Sekojoši:
Kustību vektoru un kompensāciju mēs saucam par starprāmju saspiešanas tehnoloģiju, kas savlaicīgi atrisina video kadru datu redundanci. Papildus kadru saspiešanai kadrā jāveic arī datu saspiešana. Datu saspiešana kadra iekšienē atrisina telpisko datu dublēšanu. Tagad mēs iepazīstināsim ar kadra iekšējo saspiešanas tehnoloģiju.
Intra prognozēšana
Cilvēka acij ir zināma attēla atpazīšanas pakāpe, tā ir ļoti jutīga pret zemas frekvences spilgtumu un nav ļoti jutīga pret augstas frekvences spilgtumu. Tāpēc, pamatojoties uz dažiem pētījumiem, no attēla var noņemt datus, kas nav jutīgi pret cilvēka acīm. Tādā veidā tiek piedāvāta intra prognožu tehnoloģija.
H264 kadra iekšējā saspiešana ir ļoti līdzīga JPEG. Pēc attēla sadalīšanas makroblokos katru makrobloku var paredzēt 9 režīmos. Atrodiet prognozēšanas režīmu, kas ir vistuvāk sākotnējam attēlam.
Šis attēls ir katra makro bloka prognozēšanas process visā attēlā.
Attēls pēc intra prognozēšanas un sākotnējā attēla salīdzinājums ir šāds:
Pēc tam sākotnējais attēls un paredzētais attēls tiek atņemts, lai iegūtu atlikušo vērtību.
Pēc tam saglabājiet informāciju par prognozēšanas režīmu, ko saņēmām iepriekš, lai dekodējot varētu atjaunot sākotnējo attēlu. Efekts ir šāds:
Pēc kadra iekšējās un starprāmju saspiešanas, kaut arī dati ir ievērojami samazināti, joprojām ir iespējas optimizēt.
Veiciet DCT par atlikušajiem datiem
Atlikušos datus var pakļaut vesela skaitļa diskrētai kosinusa transformācijai, lai noņemtu datu korelāciju un vēl vairāk saspiestu datus. Kā parādīts zemāk redzamajā attēlā, kreisā puse ir sākotnējo datu makrobloks, un labā puse ir aprēķināto atlikušo datu makro bloks.
Atlikušo datu makrobloks tiek digitalizēts, kā parādīts zemāk redzamajā attēlā:
DCT pārveidošana tiek veikta atlikušo datu makroblokā.
Pēc saistīto datu noņemšanas mēs varam redzēt, ka dati tiek vēl vairāk saspiesti.
Pēc tam, kad DCT ir paveikts, ar to nepietiek, un saspiešanai bez zaudējumiem ir nepieciešams CABAC.
CABAC
Iepriekš minētā kadra iekšējā saspiešana ir ar zaudējumiem saistīta saspiešanas tehnika. Citiem vārdiem sakot, pēc attēla saspiešanas to nevar pilnībā atjaunot. CABAC ir bezzudumu saspiešanas tehnoloģija.
Visiem vispazīstamākā var būt bezzuduma saspiešanas tehnoloģija - Huffman kodēšana, īss kods augstfrekvences vārdiem, garš kods zemfrekvences vārdiem, lai sasniegtu datu saspiešanas mērķi. MPEG-2 izmantotais VLC ir šāda veida algoritms, kā piemēru ņemam AZ, A pieder augstfrekvences datiem un Z pieder zemfrekvences datiem. Skatiet, kā tas tiek darīts.
CABAC ir arī īss kods augstfrekvences datiem un garš kods zemfrekvences datiem. Tajā pašā laikā tas tiks saspiests, pamatojoties uz kontekstu, kas ir daudz efektīvāk nekā VLC. Efekts ir šāds:
Tagad nomainiet AZ ar video rāmi, un tas izskatīsies šādi.
No iepriekš redzamā attēla ir acīmredzams, ka bezzudumu saspiešanas shēma, izmantojot CACBA, ir daudz efektīvāka nekā VLC.
kopsavilkums
Šajā brīdī mēs esam pabeiguši H264 kodēšanas principu. Šajā rakstā galvenokārt runāts par šādiem jautājumiem:
1. Jianyin H264 ieviesa dažus pamatjēdzienus. Piemēram, I / P / B rāmis, GOP.
2. Detalizēti izskaidroja H264 kodēšanas pamatprincipus, tostarp:
Makro bloku sadalījums
Attēlu grupēšana
Iekšējā kadra saspiešanas tehnoloģijas princips
Starprāmju saspiešanas tehnoloģijas princips.
DCT
CABAC saspiešanas princips.
|
Ievadiet e-pastu, lai saņemtu pārsteigumu
es.fmuser.org
it.fmuser.org
fr.fmuser.org
de.fmuser.org
af.fmuser.org -> afrikands
sq.fmuser.org -> albāņu
ar.fmuser.org -> arābu
hy.fmuser.org -> armēņu
az.fmuser.org -> azerbaidžāņu
eu.fmuser.org -> basku valoda
be.fmuser.org -> baltkrievu
bg.fmuser.org -> bulgāru valoda
ca.fmuser.org -> katalāņu
zh-CN.fmuser.org -> ķīniešu (vienkāršotā)
zh-TW.fmuser.org -> ķīniešu (tradicionālā)
hr.fmuser.org -> horvātu
cs.fmuser.org -> čehu
da.fmuser.org -> dāņu
nl.fmuser.org -> holandiešu
et.fmuser.org -> igauņu
tl.fmuser.org -> filipīniešu
fi.fmuser.org -> somu
fr.fmuser.org -> franču valoda
gl.fmuser.org -> galisiešu valoda
ka.fmuser.org -> gruzīnu
de.fmuser.org -> vācu
el.fmuser.org -> grieķu
ht.fmuser.org -> Haiti kreolu
iw.fmuser.org -> ebreju
hi.fmuser.org -> hindi
hu.fmuser.org -> ungāru valoda
is.fmuser.org -> islandiešu
id.fmuser.org -> indonēziešu
ga.fmuser.org -> īru
it.fmuser.org -> itāļu
ja.fmuser.org -> japāņu
ko.fmuser.org -> korejiešu
lv.fmuser.org -> latviski
lt.fmuser.org -> lietuviešu
mk.fmuser.org -> maķedoniešu
ms.fmuser.org -> malajiešu
mt.fmuser.org -> maltiešu
no.fmuser.org -> norvēģu
fa.fmuser.org -> persiešu
pl.fmuser.org -> poļu
pt.fmuser.org -> portugāļu
ro.fmuser.org -> rumāņu
ru.fmuser.org -> krievu valoda
sr.fmuser.org -> serbu
sk.fmuser.org -> slovāku
sl.fmuser.org -> slovēņu
es.fmuser.org -> spāņu
sw.fmuser.org -> svahili
sv.fmuser.org -> zviedru
th.fmuser.org -> taizemiešu
tr.fmuser.org -> turku
uk.fmuser.org -> ukraiņu
ur.fmuser.org -> urdu valoda
vi.fmuser.org -> vjetnamiešu
cy.fmuser.org -> velsiešu
yi.fmuser.org -> jidišs
FMUSER Wirless pārraida video un audio vieglāk!
Kontakti
Adrese:
Nr. 305 istaba HuiLan ēka Nr.273 Huanpu Road Guangzhou, Ķīna 510620
Kategorijas
Saņemt jaunumus