Rok / Year: Svazek / Volume: Číslo / Issue: 2012 14 4 Výkonnost specializovaných bezpečnostních kamer při předávání statického obrazu s využitím dotazovací metody GET Performance of specialized security cameras in the transmission of still images using the GET method query Radek Pospíšil xpospi31@stud.feec.vutbr.cz Fakulta elektrotechniky a komunikačních technologií VUT v Brně. Abstrakt: Článek se zabývá problematikou získávání statického obrazu ze specializovaných kamer používaných v bezpečnostních systémech, respektive systémech CCTV. Prostřednictvím specializovaného testovacího rozhraní je měřena výkonnost typických zástupců bezpečnostních kamer s ohledem na přenos snímků prostřednictvím protokolu http a metody GET. Článek dále poukazuje na omezenou použitelnost popisované metody přístupu k obrazu specializovaných bezpečnostních kamer. Abstract: This article deals with the acquisition of a static image of the specialized cameras which are used in CCTV systems. The article presents the results of performance in the transmission of video cameras picture via http protocol.
Výkonnost specializovaných bezpečnostních kamer při předávání statického obrazu s využitím dotazovací metody GET Radek Pospíšil Fakulta elektrotechniky a komunikačních technologií VUT v Brně Email: xpospi31@stud.feec.vutbr.cz Abstrakt Článek se zabývá problematikou získávání statického obrazu ze specializovaných kamer používaných v bezpečnostních systémech, respektive systémech CCTV. Prostřednictvím specializovaného testovacího rozhraní je měřena výkonnost typických zástupců bezpečnostních kamer s ohledem na přenos snímků prostřednictvím protokolu http a metody GET. Článek dále poukazuje na omezenou použitelnost popisované metody přístupu k obrazu specializovaných bezpečnostních kamer. 1 Úvod V oblasti bezpečnostních kamerových systémů (CCTV, neboli Closed Circuit Television) v nedaleké minulosti dominovaly systémy analogové. Současným trendem je ovšem přechod k řešením využívajícím pro přenos informací protokol IP, díky čemuž je umožněno využití specializovaných bezpečnostních kamer i v dalších oblastech souvisejících s digitálním zpracováním obrazu. U systémů CCTV se využívá při kompresi videa standardů, MPEG-4 a formátu [1]. Tento článek je zaměřen na praktické ověření využitelnosti bezpečnostních kamer pro získávání statických obrazových dat přenášených v podobě komprimovaného ztrátového formátu JPEG. Výrobci bezpečnostních kamer integrují do svých výrobků webové servery, které umožňují prostřednictvím metody GET [2] předávat statická obrazová data, která korespondují s aktuální obrazovou scénou, kterou kamera zaznamenává. Takto je možné relativně jednoduše získat obrazová data pro následné zpracování. Omezením ovšem je velmi nízký počet jednotlivých snímků, které lze během jedné sekundy zpřístupnit a metodou nelze v žádném případě suplovat přístup prostřednictvím standardů, nebo MPEG-4 [3]. Bohužel jednotlivé modely bezpečnostních kamer neobsahují informaci o rychlosti předávání statického obrazu při daném rozlišení a míře komprese, proto vzniknul tento článek, jehož cílem je zpřístupnit informace o možnostech využitelnosti výše uvedené metody získávání obrazových dat. 1.1 Přístup k datům bezpečnostních kamer Webové servery, integrované v bezpečnostních kamerách, umožňují prostřednictvím URL [2] příkazů vzdáleně obsluhovat kameru, nastavovat její parametry, či získávat požadovaná data. Každý z výrobců bohužel integruje svoje vlastní proprietární rozhraní, a proto jednotlivé příkazy, které kamera akceptuje, nejsou jednotné. Princip dotazování se o JPEG data je stejný a liší se pouze podoba výrazu (identifikátoru URI), který každý z výrobců modifikuje do podoby vyhovující jeho produktům. Veškeré potřebné informace bývají obsaženy v dokumentacích označovaných jako URL commands [4], Web protocols [5], HTTP interface, CGI commands [6], a podobně. Tyto dokumentace bývají veřejně přístupné, ovšem někteří výrobci je tají a předávají pouze svým partnerským společnostem, které provádějí implementaci a integraci do systémů třetích stran. Získání statického obrazu v podobě JPEG obrazových dat je u testovaných zařízení možné prostřednictvím URI identifikátorů uvedených v tabulce 1. Přehled všech možností práce s bezpečnostními kamerami lez získat ze specializovaných dokumentacích výrobců [4],[5],[7] a [6]. Tabulka 1: URI identifikátory pro získání statického snímku Výrobce (Model) ACTI (TCM-5611) ArecontVision (AV10115DN) Axis (M1114) Sanyo (VCC-HD2500P) Sony (SNC-CH240) Vivotek (IP8332) 2 Metoda testování URI identifikátor http://ip_addr/image?res=full http://ip_addr/jpg/image.jpg http://ip_addr/onejpeg.cgi?stream=1 http://ip_addr/onejpeg.cgi http://ip_addr/cgi-bin/encoder/user= username&pwd=password&snapshot http://ip_addr/cgibin/viewer/video.jpg Za účelem testování byla vytvořena aplikace, která umožňuje měřit průměrný počet statických obrázků získaných během jedné sekundy, související procentuální vytížení procesoru a počet bitů přenesených po datové síti. Vytížení procesoru a počet přenesených bitů je měřeno zejména z toho důvodu, aby bylo při každém měření ověřeno, že není počet přenesených statických snímků ovlivněn nedostatečným výkonem měřícího počítače nebo propustností použité datové sítě. 53 1 VOL.14, NO.4, AUGUST 2012
Ověřovací aplikace, uvedená na obrázku 1, je napsána v programovacím jazyce c# a po jejím spuštění dojde k vytvoření vlákna thread (Thread thread = new Thread()). V rámci vlákna jsou do měřené bezpečnostní kamery odesílány dotazy na statický obraz. Pro odesílání a příjem dat je použita třída WebClient (using (System.Net.WebClient webclient = new System.Net.Web.Client())), která slouží k odesílání a příjmu dat ze zdroje identifikovaného prostřednictvím URI. Aktuální obraz je zachycen z datového streamu a zpracován prostřednictvím třídy Bitmap. Bezprostředně po dokončení zpracování datového streamu je celý process získávání statického obrazu v rámci vlákna opakován a to po celou dobu měření. Následným vyhodnocením je tak možné získat představu o nejvyšším možném počtu snímků, které lze během určené časové jednotky získat. [8] Obrázek 1: Aplikace použitá k měření možností kamer 2.1 Zvolené modely bezpečnostních kamer Jako typické zástupce bezpečnostních kamer jsem zvolil výrobky společnostní ACTi (model TCM-5611), AXIS (model M1114), Sony (model CH-240), Sanyo (model VCC- HD2500P) a Vivotek (model IP8332). Jedná se o často používané bezpečnostní kamery s rozlišení vyšším než 1,0MPix (každá z bezpečnostních kamer má jiné, avšak podobné rozlišovací možnosti). Do měření jsem dále zahrnul kameru ArecontVision AV10115DN, která vykazuje nadprůměrné rozlišovací možnosti (až 3648x2752pixelů). Tuto kameru nelze vyhodnocovat v souvislosti s ostatními bezpečnostními kamerami vzhledem k řádově odlišnému rozlišení a tedy množství přenášených dat a potřebě vyššího hardwarového výkonu. Jedná se ovšem o názornou ukázku obdobného chování bezpečnostní kamery a ověření charakteru kamer, kterým se tento článek zabývá. V tabulce 2 jsou uvedeny parametry testovaných bezpečnostních kamer. Jednotlivé parametry odpovídají údajům, které poskytují konkrétní výrobci v technické dokumentaci výrobků. Zpravidla se jedná o teoretické hodnoty, které jsou ve většině případů udávány při použití kompresního standardu, kdy bezpečnostní kamery vykazují vyšší hodnoty snímkových frekvencí, než je možné dosáhnout v případě formátu, případně prostřednictvím přenosu statického obrazu prostřednictvím dotazovací metody GET. Tabulka 2: Parametry testovaných bezpečnostních kamer Model Nativní rozlišení Podpora standardů komprese [pixelů] [fps] - TCM-5611 1280x1024 18 M1114 1280x800 30 IP8332 1280x800 25 Snímková frekvence při nativním rozlišení SNC- CH240 1920x1440 20 HD2500P 1920x1080 25 10115DN 3648x2752 7 MPEG-4 MPEG-4 M.264 MPEG-4 Průběh samotné komunikace mezi měřenou kamerou a testovacím počítačem probíhá tak, jak je uvedeno na obrázku 2. Data jsou přenášena v rámcích o velikosti 1514 bitů, přičemž poslední rámec bývá zpravidla kratší. Síťová komunikace probíhá prostřednictvím TCP/IP a pro ověřování dat odesílaných prostřednictvím síťového rozhraní byl použit nástroj Wireshark (http://www.wireshark.org) [9], který sloužil i pro odečet počtu bitů přenesených mezi bezpečnostní kamerou a měřícím a vyhodnocovacím počítačem během měření. Měřící a vyhodnocovací PC Kamera Obrázek 2: Průběh komunikace mezi kamerou a počítačem 53 2 VOL.14, NO.4, AUGUST 2012
Pro účely měření a vyhodnocování byla použita testovací pracovní stanice s dostatečným hardwarovým výkonem, který eliminoval vliv výkonu na samotné měření parametrů bezpečnostních kamer. Konkrétně se jednalo o model Hewlett- Packard EliteBook 8460p osazený procesorem Intel Core i7-2620m (typická pracovní frekvence tohoto procesoru je 2.70GHz) a dvěma paměťovými moduly o celkové velikosti 8 GB. Jako operační systém byl použit 64bitový operační systém Microsoft Windows 7 Professional 3 Dosažené výsledky Výsledky měření jsou uvedeny v tabulce 3, která u každého z měření udává také průměrné využití procesoru a vyžadovanou přenosovou rychlost. Model TCM-5611 M1114 IP8332 Vytížení CPU (přenosová rychlost) SNC- CH240 HD2500P Tabulka 3: Výsledky měření Relativní kvalita obrazu Počet snímků - [sn./sp] % (Mbit/s) nízká 10,79 5,41 (1,95) střední 7,73 3,31 (5,61) vysoká 1,83 1,71 (16,84) nízká 5,99 1,69 (1,09) střední 5,62 2,06 (3,05) vysoká 2,70 2,29 (12,42) nízká 1,10 0,33 (2,58) střední 2,00 0,74 (4,65) vysoká 1,36 0,66 (4,09) nízká 5,01 2,95 (7,97) střední 3,84 3,84 (12,08) vysoká 0,99 1,52 (8,18) nízká 7,04 2,33 (3,59) střední 6,09 2,49 (5,87) vysoká 4,12 1,91 (4,98) 10115DN - 0,63 7,49 (25,13) Vytížení CPU a přenosovou rychlost jsem sledoval z důvodu vyloučení vlivu omezeného výkonu a nedostatečné propustnosti datové sítě. Testované bezpečnostní kamery byly umístěny do stejného datového segmentu s měřící stanicí a propojeny prostřednictvím switche CISCO SD208P. Každá z bezpečnostních kamer umožňuje nastavit míru komprese obrazových dat, s čímž souvisí parametr relativní kvalita obrazu uvedený rovněž v tabulce 3. Grafické znázornění výsledků měření je uvedeno na obrázku 3. Z uvedeného grafu je patrná relativnost kvality obrazu (tedy parametru relativní kvality obrazu z tabulky 3). Při minimální kvalitě obrazu (nejvyšší míře komprese) se výkonnost jednotlivých bezpečnostních kamer zásadně liší a důvodem je zejména fakt, že každý výrobce komprimuje data jinak razantně (viz. obrázek 4). Toto je eliminováno při nastavení nejvyšší kvality obrazu, kde je smazán rozličný přístup ke kvalitě obrazu jednotlivých výrobců (ze všech bezpečnostních kamer byla přijímána obrazová data s vizuálně velmi podobnou kvalitou). Obecně lze tedy říci, že se při předávání statického obrazu metodou GET [2] chovají všechny bezpečnostní kamery obdobně a pokud pro následné zpracování vyžadujeme kvalitní obrazová data, je možné takto získat maximálně jednotky snímků za sekundu. Jedná se, v řadě případů, o velmi limitující faktor a je proto nutné zvážit, zda je možné a vhodné k získávání dat bezpečnostních kamer takto přistupovat. Jak uvádí literatura [3], je v oblasti bezpečnostních systémů třeba pracovat se snímkovou frekvencí v závislosti na sledované scéně a s ohledem na oblast využití. JPEG je velmi oblíbeným formátem díky jednoduchosti implementace [1], [3]. Pokud ovšem ke snímkům přistupujeme metodou uvedenou v tomto článku, lze kamery v oblasti bezpečnostních systémů nasadit pouze v případě scén s pomalu se pohybujícími objekty. [3] Obrázek 3: Popis obrázku Obrázek 4 ukazuje značný rozdíl mezi minimální kvalitou obrazu jednotlivých bezpečnostních kamer a jeho eliminaci směrem k maximální kvalitě obrazu. Ve všech případech se jedná o nastavení minimální a maximální kvality obrazu tak, jak to umožňují jednotlivé kamery. Velmi názorně je tak vidět, že například ACTI TCM-5611 přistupuje k minimální kvalitě obrazu naprosto odlišně od Vivotek IP8332, přitom ale maximální kvalita obrazu je již velmi podobná. Toto koresponduje s obrázkem 3, kde kamera Vivotek poskytuje při minimální kvalitě obrazu až 12 sn./s, což je v praxi s ohledem na velmi nízkou kvalitu obrazu nevyužitelná hodnota. TCM-5611 Minimální kvalita (výřez) Maximální kvalita (výřez) 53 3 VOL.14, NO.4, AUGUST 2012
M1114 V opačném případě, tedy pokud je vyžadována vysoká kvalita obrazu, lze z testovaných bezpečnostních kamer jednoznačně doporučit model Sanyo VCC-HD2500P. Tato bezpečnostní kamera vykazuje při srovnatelné relativní kvalitě obrazu vyšší výkonnost při předávání statických snímků než ostatní bezpečnostní kamery podrobené měření v rámci článku. Poděkování Tato práce vznikla v rámci řešení projektu Bezpečnostního výzkumu Ministerstva vnitra reg. č. VG20102014033. IP8332 Literatura Vždy uvádějte úplný seznam použité literatury podle platných českých norem ISO 690 a ISO 690-2. Zdroje, které nejsou nikde v textu citovány neuvádějte! SNC-CH240 [1] BANERJEE, Bob. BOSCH SECURITY SYS- TEMS. Video Compression for CCTV: White Paper. 2005. Dostupné z: http://www2.boschsecurity.us/ip/forms/9_white% 20Paper%20Video%20Compression%20for%20 CCTV.pdf HD2500P [2] Hypertext Transfer Protocol HTTP/1.1 [onlinep]. 2004 [cit. 2012-08-08p]. Dostupné z: http://www.w3.org/protocols/rfc2616/rfc2616.htm Obrázek 4: Porovnání relativních kvalit obrazu nastavitelných v bezpečnostních kamerách 4 Závěr Přístup k obrazovým datům bezpečnostních kamer prostřednictvím HTTP a metody GET je značně omezený vzhledem k dosažitelnému počtu snímků, které lze takto během jedné sekundy obdržet. Při nastavení nízké kvality obrazu dochází k nárůstu snímkové frekvence, separátním jevem je ovšem degradace obrazu. Pokud chceme s obrazovými daty dále pracovat a požadujeme jejich vysokou kvalitu, je možné takto k bezpečnostním kamerám přistupovat pouze v případě, že pracujeme maximálně se dvěma až čtyřmi statickými snímky v rámci jedné sekundy. U bezpečnostních kamer ACTI TCM-5611 a AXIS M1114 lze pracovat v dostatečném rozsahu pracovat s kompresí výsledného JPEG statického snímku, čímž lze dosáhnout vyššího množství přenesených snímků během jedné sekundy a pokud následné zpracování obrazu nevyžaduje maximální kvalitu vstupních dat (respektive minimální kompresi), lze tyto kamery doporučit pro laboratorní účely i praktické aplikace. [3] AMERICAN PUBLIC TRANSPORTATION AS- SOCIATION. Selection of Cameras, Digital Recording Systems,: RECOMMENDED PRACTI- CE. 2011. Dostupné z: http://www.aptastandards.com/linkclick.aspx?fil eticket=cpoz3kzcuq%3d&tabid=326&mid=1735&language=en -US [4] MERITEE, Ando. ACTI. ACTi Camera URL Commands. 2012. Dostupné z: http://www.acti.com/getfile/knowledgebase_upl oadfile/acti_camera_url_commands_20120327_ 002.pdf [5] ARECONT VISION. Camera Web Page & Access Protocols: User manual. USA, 2011. Dostupné z: http://www.arecontvision.com/downloads.php 53 4 VOL.14, NO.4, AUGUST 2012
[6] SONY CORPORATION. CGI Command Manual. 2010. Dostupné z: http://pro.sony.com.cn/productinfo/vs/downloads/ SNC_5thGen_CGIManual180EN.pdf [7] VAPIX: AXIS API. [online]. [cit. 2012-08-08p]. Dostupné z: http://www.axis.com/techsup/cam_servers/dev/c am_http_api_index.php [8] ECKEL, Bruce. Myslíme v jazyku C. Vyd. 1. Praha: Grada, 2000, 554 s. ISBN 80-247-9009-2. [9] Wireshark User s Guide for Wireshark 1.9 [online]. [cit. 2012-08-08p]. Dostupné z: http://www.wireshark.org/docs/wsug_html_chunk ed/ 53 5 VOL.14, NO.4, AUGUST 2012