English
Developed by ENIGMA
print
InfoIzdvojene teme
Slanje sadržaja na mail print

01

12/10

Komparacija između H.264, MJPEG i drugih uobičajenih shema kompresije u videonadzoru

Ključna razmatranja pri odabiru algoritma videokompresije (prvi dio)

Pete DeAngelis i Paul Bodell iz kompanije IQinVision podijelili su s nama svoja gledišta o odabiru kompresionih algoritama na temelju korisničkih potreba i okruženja primjene CCTV sistema. 

Piše: Pete DeAngelis i Paul Bodell, IQinVision

loader

S pojavom H.264 i drugih tipova kompresije i rastućim izobiljem prodajnih i marketinških tvrdnji, sve je teže odrediti najbolji tip kompresije za vašu aplikaciju. Ipak, da biste stekli pravi dojam o konkurirajućim tvrdnjama, prvo morate razumjeti osnove funkcioniranja kompresije.

Vrste kompresije

Postoje dva osnovna tipa kompresije: frame-by-frame kompresija i temporalna kompresija. Frame-by-frame kompresija radi tako da uzima čitavu sliku za svaki frejm, kompresuje tu sliku, te šalje svaku sliku zasebno, jednu za drugom u vidu strujanja snimka. Najpopularnija frame-by-frame kompresija je Motion JPEG (MJPEG). Ima široku upotrebu zato što daje najvišu kvalitetu videosnimka, veoma je jednostavna za dekodiranje i nije u zaštićenom vlasništvu bilo koje kompanije. Međutim, MJPEG-ova Ahilova peta je to što za postizanje visokog kvaliteta slike za svaki videofrejm proizvodi relativno velike datoteke, što znači da zahtijeva veću propusnost mreže kod prijenosa podataka i veće kapacitete za pohranu. Temporalni kompresioni algoritmi su razvijeni za strujanje snimka na manjoj propusnosti nauštrb kvaliteta slike, kao i konzistencije propusnosti i pohrane i primijenjeni su u mnogim tipičnim videonadzornim aplikacijama. Jednostavno rečeno, temporalna kompresija radi ovako: dok će MJPEG uzeti 50 “punih” slika da stvori 5 sekundi videosnimka od 10 frejmova u sekundi (5 sekundi x 10 fps = 50), temporalni kompresioni algoritam će uzeti 10 ili manje “punih” slika, koje se obično nazivaju “ključni frejmovi”, da reproducira 5 sekundi temporalno kompresovanog snimka od 10 fps. To se postiže korištenjem matematičkih proračuna za predviđanje onoga što bi se moglo promijeniti između ključnih frejmova i šalje se samo ono što se mijenja umjesto slanja “pune” slike. Ukoliko u kadru ima malo ili nema promjena između frejmova, temporalna kompresija će, jednostavno, reproducirati samo ključne frejmove, koji u navedenom primjeru imaju omjer 10:50 ili 80% efikasnije od MJPEG-a. Kad je u pitanju efikasnost temporalne kompresije, treba imati na umu i sljedeću činjenicu: zahtjevi propusnosti i pohrane mogu biti visoki ovisno o sceni koja se snima. Da biste to sebi ilustrovali, zamislite kameru koja se kreće i zumira (PTZ). Cjelina scene se mijenja sa svakim frejmom, prisiljavajući temporalnu kompresiju da radi prekovremeno u interpretiranju onoga što se dešava i izračunavanja toga koje slike da šalje. Rezultat toga je veliki porast zahtjeva propusnosti i pohrane, ali uz marginalan kvalitet slike zauzvrat. Uzimajući sve ovo u obzir, da li je temporalna kompresija bolja za vašu aplikaciju od frame-by-frame kompresije? To će zavisiti od niza različitih faktora, ali prije nego što uđemo u razmatranje tih faktora, pogledajmo kako izgleda temporalni kompresioni algoritam koji najviše obećava – H.264.

Šta je H.264?

Mnogo je članaka napisano o ovome, tako da nećemo ići u detalje, osim što možemo kazati da je to najsofisticiraniji temporalni algoritam enkodiranja koji danas možemo naći na tržištu. U nekim slučajevima, on može pružiti sliku kvaliteta približnog onoj MJPEG-a. To postiže koristeći sofisticiranije matematičke algoritme od svojih temporalnih prethodnika kao što su MPEG-2, MPEG-4 i H.263. Ovi matematički algoritmi su bolji u predviđanju promjena kretnji između ključnih frejmova, tako da će video biti tačniji i s manje zamagljenosti i „pikseliziranosti“ u odnosu na starije temporalne tehnike kompresije.

H.264 profili

Postoji 8 tipova H.264 formata, koje nazivamo profili:

Tip profila Tipične aplikacije H.264 videokvalitet Propusnost
High Stereo Profile “Two-view” stereoskopski 3D video Visok Visoka
High 4:4:4 Predictive Profile (Hi444PP Za aplikacije emitovanja snimka ultravisokog kvaliteta bez gubitaka na kvalitetu videa Visok Visoka
High 10 Profile (Hi10P) Profesionalne aplikacije koje koriste isprepleteni video Srednji Srednja
High Profile (HiP) U aplikacijama emitovanja  snimka visoke definicije i megapikselnog snimka, kao i aplikacijama  pohrane. HD DVD i Blu-ray diskovi koriste HiP. Srednji Srednja
Extended Profile (XP) Kod emitovanja snimka za mainstream potrošače i za aplikacije pohrane koje zahtijevaju visoku kompresiju i visoku pouzdanost. Srednji Srednja
Main Profile (MP) Kod emitovanja snimka za mainstream potrošače i za aplikacije pohrane Srednji Niska
Baseline Profile (BP) Jeftine aplikacije koje zahtijevaju dodatnu provjeru grešaka Nizak Niska
Constrained Baseline Profile (CBP) Jeftine aplikacije kao što su videokonferencije i mobilne aplikacije Nizak Niska

Svaki proizvođač podešava H.264 profil kako bi odgovarao njegovim potrebama, što znači da ne postoje dva identična H.264 profila. Odluka o tome u kojem pravcu ići prvenstveno će zavisiti od tri varijable:

  1. željeni kvalitet slike;
  2. dostupna propusnost/kapacitet pohrane;
  3. dostupna procesorska snaga.

Zabilježite sebi one varijable koje će u konačnici utjecati na vašu odluku o tome koja je metodologija kompresije najbolja za vašu aplikaciju. Većina proizvođača H.264 kamera koristi Baseline, Constrained Baseline ili u nekim slučajevima profil s veoma niskim performansama, kod kojeg su mnoge kvalitetne funkcije, jednostavno, “izbačene” zato što u svojim kamerama nemaju procesorsku snagu koja bi mogla podržati visokokvalitetne značajke.  

Svi znamo da ne postoji tzv. „srebreni metak“ kad je riječ o tehnologiji. Ako kompresioni algoritam koristi manje prostora za pohranu ili procesorske snage, onda će to morati nadoknaditi na drugim područjima i stručnjaci koji razumiju te kompromise naučili su da dizajniraju njihova okruženja.

Devet uvjeta u odabiru kompresije

Kako bi se pomoglo u određivanju najbolje moguće kompresije za različite vrste aplikacija, razvijena je lista koja sadrži  devet uvjeta vezanih za korisničke zahtjeve ili za videonadzorno okruženje. U ovom članku ćemo razmotriti prva dva, o ostalih sedam bit će riječi u iduća dva članka.

1. Rezolucija (korisnički zahtjev). Da li vam je potreban dosljedan, visokokvalitetan video? Ako je najbolji kvalitet videa, a to znači onaj forenzični ili veoma detaljni – najvažniji, tada je MJPEG pravi izbor zato što će kvalitet kod ovog formata biti konstantan u većini scena. Ako razmatrate korištenje H.264 formata za postizanje najboljeg kvaliteta videa, on će vam omogućiti da odaberete konstantnu brzinu prijenosa (CBR) ili varijabilnu brzinu prijenosa (VBR), kako bi se postigao ovaj cilj. CBR je u osnovi regulator propusnosti i kad je u primjeni, H.264 će žrtvovati kvalitet slike da bi limitirao propusnost. Preporučuje se korištenje VBR-a kod videonadzornih aplikacija, u protivnom ćete preobraziti visokokvalitetni video u zamagljenu i pikseliziranu sliku, posebno kad je riječ o HD/megapikselnim kamerama. Sa H.264 kompresijom, uz rast rezolucije kvalitet slike može značajno varirati. To isto vrijedi za varijacije propusnosti, zato se uvjerite da dizajneri vaše mreže računaju na najgori mogući scenarij, kao što su zahtjevne scene u kojima je protok podataka znatno povećan.

2. Stopa frejmova (korisnički zahtjev). Koja brzina slike vam je potrebna? To je veoma važno razmatranje jer bi pogrešan odgovor mogao rezultirati s mnogo nepotrebnih troškova. Ranije su mnoge projektne specifikacije bile bazirane na sposobnostima kamere, a ne na korisničkim potrebama. Danas sve više kupaca pita: “Ako imam incident, šta želim vidjeti?” Recimo da kupac želi imati dobre slike osobe koja hoda duž neke ulice i zavisno od sposobnosti kamere i leća, osoba će se zadržati u vidnom polju nekih 10 sekundi. Snimanje na 30 fps rezultirat će sa 300 slika te osobe. Da li je to dovoljno ili je malo, zavisit će od stava korisnika. Predvidjeti potrebnu propusnost i memoriju s variranjem brzine slike kod MJPEG formata je prilično jednostavno, jer je odnos između ta dva faktora neposredan.  

Postoji mnogo kalkulatora koji mogu pomoći s ovim; najjednostavnije je multiplicirati prosječnu veličinu fajla s brojem frejmova. Sa H.264 formatom to će biti mnogo kompleksniji proces i donekle kontraintuitivan. Kako H.264 mora interpretirati razlike između ključnih frejmova, mnogo je efikasniji na višim stopama frejmova, zato što tada ima manje promjena od frejma do frejma, tako da kamera može efikasnije raditi. Suprotno tome, na nižim stopama frejmova i aktivnim scenama postoji više promjena između ključnih frejmova, koje će zahtijevati veću propusnost i kapacitet pohrane u procesiranju i, što je još važnije, degradirat će kvalitet slike. Iako će degradiranje slike varirati u zavisnosti od toga kako je proizvođač implementirao svoju verziju formata H.264, osnovno pravilo je da će H.264 format biti primjeren aplikacijama koje zahtijevaju 15 fps ili više, zavisno od drugih korisničkih zahtjeva i uvjeta okruženja kamere.   

Na kraju, evo još nekih važnih pravila kad je riječ o prva dva uvjeta razmotrena u ovom članku:

  • Odaberite H.264 kad vaši zahtjevi govore da je ušteda na propusnosti važnija od dosljednosti kvaliteta slike ili mogućnosti predviđanja propusnosti i memorijskih potreba.
  • Odaberite H.264 ako vam je potrebno snimanje na 15 fps ili više i kad drugi zahtjevi i pitanja okruženja podržavaju taj izbor.
  • Odaberite MJPEG ako vam je potreban vrlo visok kvalitet slike s dosljednom i predvidivom propusnošću i memorijskim potrebama.

U sljedećem broju pročitajte dalja razmatranja o izboru kompresije kao i preporuke bazirane na uvjetima koji određuju koja će metodologija kompresije biti najbolji izbor za vašu aplikaciju:

3. vremenski uvjeti (uvjet okruženja),
4. osvjetljenje (uvjet okruženja),
5. živost scene (uvjet okruženja),
6. brzina objekata (uvjet okruženja),
7. pokretljivost kamere (uvjet okruženja),
8. snimanje (korisnički zahtjev),
9. gledanje uživo (korisnički zahtjev). 

 

O autorima

Peter DeAngelis je predsjednik i izvršni direktor u kompaniji IqinVision, jednom od renomiranih svjetskih proizvođača megapikselnih videonadzornih kamera. Prije pristupanja IQinVisionu, Peter je bio suosnivač, potpredsjednik razvoja i tehnički direktor u kompaniji Rokenbok Toy Company sa sjedištem u San Diegu. Prije toga obavljao je funkciju direktora odjeljenja za razvoj novih proizvoda u Newpoint Corporationu, posebnoj diviziji unutar kompanije Proxima Corporation. DeAngelisova uspješna karijera na organizacijskim funkcijama počela je u kompaniji PC Device Inc., koju je osnovao u ranim ‘90-im, a koja se bavila prodajom PC-baziranih audioproizvoda. Diplomirao je elektroinženjering na Univerzitetu Maine i izumitelj je brojnih američkih i inozemnih patenata.

Paul Bodell je šef marketinškog odjela u kompaniji IQinVision. Proveo je 15 godina u sigurnosnoj industriji na pozicijama višeg menadžmenta u kompanijama poput Sensor/HID, Silent Knight i Philips CCTV. Paul je redovan saradnik eminentnih magazina koji obrađuju teme iz domena industrije sigurnosti i aktivan je u SIA, IP UserGroupu i drugim industrijskim grupacijama. Posjeduje diplomu inženjera Univerziteta Connecticut, diplomirao je matematiku na Univerzitetu Fairfield i posjeduje MBA s Univerziteta New Haven. 

Arhiva