Opis Systemu Wrocław, październik 2004, marzec 2006
Producentem systemu jest firma Insofter. Insofter Mieczysław Rozent ul. Skłodowskiej-Curie 55/61 50-950 Wrocław tel./fax. +48 71 328 23 41 http://www.insofter.pl e-mail: insofter@insofter.pl Oferujemy gotowość do realizacji specjalnych wersji naszego systemu dostosowanych do indywidualnych wymagań technicznych, realizujących dodatkowe funkcje lub współdziałających z innymi systemami automatyki. http://www.insofter.pl 2
Spis treści IZOR INTELIGENTNE ZLICZANIE OBIEKTÓW RUCHOMYCH... 4 IZOR MARKET... 4 ZLICZANIE WIZYJNE... 5 BUDOWA SYSTEMU... 7 STACJA POMIAROWA... 7 ARCHITEKTURA SYSTEMU... 8 KARTA VIDEOIN PCI... 12 APLIKACJA IZOR ADMINISTRATOR/PROCESOR... 14 APLIKACJA IZOR MARKET KLIENT... 15 BAZA DANYCH SQL... 18 http://www.insofter.pl 3
IZOR Inteligentne Zliczanie Obiektów Ruchomych naleŝy do rodziny systemów zliczających IZOR, w których jako instrument pomiarowy zastosowano kamerę video. to system zliczania obiektów ruchomych poruszających się w określonych punktach pomiarowych przystosowany do zliczania osób. Fakt, Ŝe ruch osób nie jest uporządkowany, często wielokierunkowy i o zmiennej prędkości stwarza duŝą trudność w uzyskaniu poprawnych wyników. Tradycyjne systemy, oparte na fotokomórkach, czy teŝ róŝnego rodzaju czujkach ruchu, nie są w stanie poprawnie rozpoznać sytuacji, w których przejście zostanie przekroczone przez dwie lub więcej osób jednocześnie, często w przeciwnych kierunkach. Zastosowanie kamery video oraz komputerowego przetwarzania obrazu daje moŝliwość ominięcia problemów opisanych powyŝej. Zastosowany w systemie specjalistyczny algorytm analizujący obraz na bieŝąco pozwala osiągnąć dokładności pomiarów rzędu 95%. Algorytm rozpoznaje równieŝ poprawnie kierunek poruszania się widzianych osób. http://www.insofter.pl 4
Zliczanie wizyjne System IZOR prowadzi pomiar poprzez analizę obrazu wideo. Ingerencja w obiekt pomiarowy jest minimalna i ogranicza się do zainstalowania kamery, centralnie nad przejściem, oraz zapewnienia odpowiedniego oświetlenia. Obserwowane przejście moŝe mieć dowolną szerokość. WaŜne jest jedynie, aby istniała moŝliwość zdefiniowania osi ruchu. Nie ma zatem konieczności instalowania w punktach pomiarowych dodatkowych urządzeń porządkujących ruch osób (np. bramek mechanicznych, barierek itp.). Algorytm pomiarowy zlicza osoby przecinające zdefiniowane przez operatora bramki pomiarowe. Bramka pomiarowa, to linia łamana, prostopadła do przyjętej osi ruchu, nakreślona przez operatora na obrazie z kamery. Algorytm w swojej konstrukcji przewiduje sytuacje, kiedy osoby przechodzą blisko siebie łącząc się w jedną całość równieŝ w przypadku gdy przechodzą one w przeciwnych kierunkach. Przewiduje on takŝe sytuacje, gdy dana osoba zatrzyma się w obrębie bramki i przebywa tam przez dłuŝszą chwilę. Długotrwałe testy oprogramowania wykazały równieŝ, Ŝe uŝywane w sklepach wózki nie powodują znaczącego wzrostu błędu pomiaru. W kadrze jednej kamery moŝna definiować dowolną liczbę bramek pomiarowych. MoŜna teŝ tworzyć bramki rozciągające się przez obraz z kilku kamer. Policzone osoby, są sumowane w zadanym cyklu (na przykład minutowym) i w takiej formie przesyłane do bazy danych SQL. W centralnej bazie SQL przechowywane są wyniki pomiarów wszystkich bramek w systemie. Transmisja obrazu z kamer video do komputera realizowana jest za pomocą karty Insofter VideoIn PCI. Karta współpracuje z dowolnymi kamerami systemu CCD, zarówno kolorowymi, jak i czarno-białymi. Karta VideoIn posiada cztery wejścia video. PoniewaŜ częstotliwość zapisywanych klatek poddawanych analizie ma duŝe znaczenie dla dokładności algorytmu pomiarowego, na karcie wykorzystuje się jedno wejście video, natomiast obsługę wielu kamer uzyskuje się dzięki zastosowaniu dzielników obrazu. Dla systemów zliczających osoby, optymalnym rozwiązaniem jest http://www.insofter.pl 5
quad łączący obraz z 4 kamer. Elementy wstępnego przetwarzania sygnału video dostarczane są jako integralna część systemu. Optymalną lokalizacją kamer są miejsca sprzyjające uporządkowanemu ruchowi klientów, o mocnym i równomiernym oświetleniu sztucznym. DuŜej dokładności sprzyjają: jednobarwne tło kadru prostopadłe ustawienie kamery nad środkiem przejścia dopasowanie kadru do szerokości przejścia. Kamery monochromatyczne zalecane są dla obiektów o słabszym oświetleniu lub z doświetlaniem podczerwienią. Kamery kolorowe poprawiają dokładność zliczania przy nierównomiernym oświetleniu, zakłócanym przez światło słoneczne i cienie. Przy dalekich kadrach zalecane jest stosowanie kamer o duŝej rozdzielczości. http://www.insofter.pl 6
Budowa Systemu System dostarczany jest jako stacja pomiarowa, czyli kompletne rozwiązanie sprzętowo programowe. Stacja pomiarowa Stacja pomiarowa zbudowana jest w oparciu o sprzęt klasy przemysłowej, przeznaczony do bezobsługowej pracy ciągłej. Zestawy kilku stacji pomiarowych zabudowane są jako całość w szafę 19. Standardowo stacja zaopatrzona jest w terminal operatora, skąd moŝna dokonywać zmian w konfiguracji systemu, jak równieŝ odczytywać i analizować wyniki pomiarów. Oprogramowanie stacji przygotowane jest teŝ do pracy bez obsługi lokalnej ze zdalna diagnostyką i administracją poprzez sieć. Dodatkowo stacje wyposaŝone są w urządzenia awaryjnego zasilania UPS oraz urządzenia typu WatchDog kontrolujące ciągłość pracy systemu. W skład jednego systemu moŝe wchodzić jedena lub więcej stacji pomiarowych, w zaleŝności od obsługiwanej przez system liczby kamer. Komplet oprogramowania składa się z: aplikacji prowadzących bieŝący pomiar aplikacji umoŝliwiających konfigurowanie kształtów bramek pomiarowych i parametrów algorytmu aplikacji archiwizującej aplikacji umoŝliwiającej przegląd bieŝących i archiwalnych wyników, tworzenie zestawień danych i raportów, jak równieŝ eksport tych danych do innych systemów. programu do kontrolnego zapisu wizji na dysku twardym aplikacji obsługującej watch-dog http://www.insofter.pl 7
Opcjonalnie instalowany są aplikacje pomocnicze: Pakiet IZYDA dla zdalnej administracji i diagnostyki systemu Aplikacja wspomagająca ręczne przeliczenia kontrolne zarejestrowanych obrazów z kamer Komponenty programowe systemu: Aplikacja IZOR Administrator/Procesor Baza Danych SQL Aplikacja Klient opisano w dalszej części dokumentacji. Architektura systemu jest systemem o otwartej i skalowalnej architekturze. Dzięki tym cechom, integracja z innymi systemami informatycznymi jest prosta i wymaga relatywnie niewielkiego nakładu pracy. W podobny sposób system moŝe zostać rozbudowany o moduły interfejsu dla zewnętrznych urządzeń automatyki. Dzięki skalowalności systemu, moŝliwe jest budowanie rozwiązań obsługujących od jednej do bardzo wielu kamer tworzących zawsze jeden spójny system. Drugim aspektem skalowalności jest moŝliwość budowania zarówno zamkniętych systemów stacjonarnych, jak i systemów rozproszonych, które prowadząc pomiary w wielu miejscach, nawet bardzo oddalonych geograficznie, komunikują się z centralną bazą SQL poprzez sieć Internet. System stacjonarny. W tej konfiguracji stacja pomiarowa jest samodzielna i zawiera wszystkie elementy systemu (Izor Administrator/Procesor, Baza Danych, Izor Market Klient). Aplikacja Klient jest uruchamiana na komputerze stacji zliczającej i dostęp do danych uzyskuje się poprzez terminal operatora. Po podłączeniu stacji do sieci lokalnej lub Internetu aplikacja moŝe być uruchomiona na odległym komputerze i zdalnie uzyskać dostęp do danych (rys. 2). http://www.insofter.pl 8
Administrator/procesor Baza danych SQL STACJA ZLICZAJĄCA Rysunek 1. Schemat systemu stacjonarnego. Wszystkie elementy działają w obrębie stacji pomiarowej. System rozproszony. W konfiguracji systemu rozproszonego stacje zliczające muszą być podłączone do sieci Internet. Musi równieŝ istnieć dedykowany Serwer Rozproszonego Systemu Zliczania. Wyniki pomiarów ze stacji są zapisywane na tym serwerze. Aplikacja Klient moŝe być uruchamiana w obrębie Serwera, bądź teŝ zdalnie (analogicznie do systemu stacjonarnego na odległym komputerze) korzystając z danych zgromadzonych na Serwerze. http://www.insofter.pl 9
Administrator/ procesor Baza danych SQL STACJA ZLICZAJĄCA Rysunek 2. Schemat systemu stacjonarnego, gdy aplikacje udostępniające dane łączą się ze stacją zliczającą zdalnie poprzez sieć lokalną lub Internet W zaleŝności od potrzeb uŝytkownika, aplikacja Klient moŝe być uruchamiana w dowolnym miejscu w sieci lokalnej lub Internetu, moŝe teŝ być uruchamiana jedynie w obrębie stacji zliczającej, bez konieczności podłączania jej do sieci. http://www.insofter.pl 10
Administrator/procesor STACJA ZLICZAJĄCA Baza danych SQL IZOR Market Administrator/procesor SERWER SYSTEMU ROZPROSZONEGO STACJA ZLICZAJĄCA Rysunek 3. Schemat systemu rozproszonego. Elementy systemu odpowiedzialne za archiwizację i udostępnianie danych działają na wspólnym dla wielu stacji Serwerze Systemu Rozproszonego. Podłączenie stacji zliczającej do sieci niesie ze sobą konieczność zabezpieczenia danych gromadzonych przez system, przed dostępem do nich osób niepowołanych. System IZOR zabezpiecza dane przechowywane przez system wymagając autoryzacji operatora przed ich udostępnieniem. http://www.insofter.pl 11
Aby uzyskać dostęp do systemu operator musi podać swoją nazwę uŝytkownika oraz hasło. Takie zabezpieczenie jest równieŝ stosowane dla systemów stacjonarnych, przy dostępie do danych poprzez terminal operatora. Dla systemów rozproszonych, oraz w przypadku dostępu do danych zdalnie poprzez sieć lokalną lub Internet, stosowane jest równieŝ zabezpieczenie danych przed podsłuchem. Wszystkie transmisje sieciowe są szyfrowane za pomocą protokołu SSL przy uŝyciu certyfikatów. Karta VideoIn PCI Dla uzyskania dobrych wyników pomiarów w systemie IZOR została wykorzystana specjalna karta przechwytująca obraz z kamer video do pamięci komputera. Karta Insofter VideoIn PCI została zaprojektowana do bezstratnego przechwytywania i przetwarzania obrazu video. Niektóre właściwości karty istotne dla systemów IZOR: wydajność 50 obrazów (półklatek) na sekundę (wpływa na dokładność zliczania) kaŝda półklatka ocechowa jest dokładnym czasem (karta posiada wewnętrzny 32 bitowy licznik z zegarem 1kHz) wykorzystanie właściwość multi-masteringu magistrali PCI (transfer obrazu nie obciąŝa procesora i nie zakłóca pracy algorytmu) bardzo wysoka jakość obrazu nie jest on kompresowany, wycinany, ani w Ŝaden inny sposób przetwarzany (dokładność zliczania) posiada cztery wyjścia i cztery wejścia binarne oraz kontroler magistrali I2C, dodatkowo zmiana stanu wejść cechowana jest dokładnym czasem (daje to moŝliwość realizacji prostego sterowania urządzeniami zewnętrznymi bez konieczności rozbudowy systemu) http://www.insofter.pl 12
Parametry techniczne: kompatybilna ze standardem PnP PCI v2.1 cztery analogowe wejścia sygnałów video 4 x CVBS (VIDEO) lub 2 x Y/C (S-VIDEO) lub 2 x CVBS i 1 Y/C dwa niezaleŝne wejściowe kanały wstępnego przetwarzania sygnału automatyczne lub programowe wzmocnienie sygnałów wejściowych rozpoznawanie częstotliwości 50/60Hz i standardu PAL lub NTSC obsługiwane standardy: PAL BGHI, PAL N, PAL M, NTSC M, NTSC N programowe ustawienia jasności, kontrastu i saturacji rozmiar obrazu dla systemu PAL 285 linii po 720 punktów; dla NTSC 239 linii po 720 punktów kolor punktu zapisany w formacie cyfrowego RGB 555 (16 bitów) dwa analogowe filtry przeciwzakłóceniowe izolacja galwaniczna wejść i wyjść binarnych dokładność zegara 50 ppm http://www.insofter.pl 13
Aplikacja IZOR Administrator/Procesor Aplikacja Administrator/Procesor łączy w sobie funkcjonalność bieŝącej analizy obrazu video oraz zbiór funkcji umoŝliwiających konfigurowanie pracy systemu. Aplikacja posiada dwa tryby pracy: pomiarowy i administracyjny. W trybie pomiarowym aplikacja pobiera kolejne klatki z karty VideoIn PCI i wykonuje algorytm zliczający. W takim trybie program uruchamia się domyślnie zaraz po włączeniu komputera i działa bezobsługowo. Pomiar natęŝenia ruchu prowadzony jest równocześnie na wszystkich zdefiniowanych bramkach. Program analizując obraz, rozpoznaje kierunek i ilość obiektów przechodzących przez bramkę. Wyniki pomiarów zapisywane są cyklicznie do centralnej bazy danych z zadaną agregacją czasową (np. minutową). Dane są cechowane czasem pobranym z komputera, na którym znajduje się baza danych, co eliminuje wpływ rozsynchronizowania się zegarów na poszczególnych stacjach. Cecha ta ma szczególne znaczenie dla systemów rozproszonych, gdzie zegary na poszczególnych komputerach nie są automatycznie synchronizowane a czasy transmisji danych poprzez sieć są znaczące. Do trybu administracyjnego przechodzi się wybierając komendę z menu programu. W trybie tym moŝna dokonać korekty w konfiguracji systemu, takich jak zmiana połoŝenia lub kształtu bramki, zmiana parametrów algorytmu, włączenie dodatkowych usług wspomagających strojenie systemu (np. tworzenie pełnego raportu pracy, czy teŝ nagrywanie filmu do pliku). Przejście programu do trybu administracyjnego wymaga podania nazwy uprawnionego operatora i hasła. http://www.insofter.pl 14
Rysunek 4. Aplikacja IZOR Administrator/Procesor. Wraz z dokumentacją systemu dostarczany jest Podręcznik UŜytkownika programu Administrator/Procesor z pełnym opisem funkcji programu. Aplikacja Klient NajwaŜniejszym elementem systemu, z punktu widzenia uŝytkownika, jest aplikacja Klient. Klient to prosta w obsłudze aplikacja, słuŝąca do przeglądania i analizy danych pomiarowych. UmoŜliwia ona tworzenie raportów oraz eksport danych dla potrzeb innych systemów. http://www.insofter.pl 15
NajwaŜniejsze funkcje realizowane przez oprogramowanie IZOR Market Klient to: Podłączenie do źródła danych, którym jest baza danych SQL archiwizująca wyniki pomiarów. JeŜeli aplikacja działa w obrębie stacji zliczającej, łączy się ona bezpośrednio bazą SQL stacji. Aplikacja moŝe równieŝ łączyć się ze stacją zliczającą zdalnie poprzez sieć lokalną lub Internet. Interesujący moŝe być fakt, Ŝe program potrafi jednocześnie korzystać z wielu źródeł danych, co daje operatorowi moŝliwość tworzenia zbiorczych zestawień dla grupy stacji. Definiowanie zbiorów bramek. Zestawienia danych budowane są poprzez wybór interesujących bramek. W programie moŝna tworzyć równieŝ zgrupowania bramek, które w dalszej analizie będą traktowane jako jedna niepodzielna całość. Definiowanie okresu czasu i sposobu agregacji. Drugą grupą parametrów zestawienia są opcje związane okresem czasu dla jakiego zestawienie to jest budowane. Oprócz predefiniowanych okresów takich jak dzień, tydzień lub miesiąc, okres czasu moŝemy określić podając jego datę początkową i końcową. Dodatkowo moŝemy określić okres czasu w przeciągu kaŝdego dnia. Program dostarcza równieŝ narzędzi do tworzenia zaawansowanych kryteriów dla selekcji danych poprzez budowanie zapytania z warunków elementarnych za pomocą operatorów AND i OR. Dla zadanego odcinka czasu naleŝy określić równieŝ sposób agregacji wyników, czyli rozdzielczość czasową zestawienia. JeŜeli na przykład wybrana zostanie agregacja 4. godzinowa, to cały okres czasowy zostanie podzielony na czterogodzinne odcinki. Liczby przyporządkowane do takich odcinków będą sumarycznymi wynikami pomiarów z czterogodzinnych okresów. Określanie interesującej wielkości mierzonej. Zestawienie moŝe zawierać liczbę wejść, wyjść lub liczbę osób http://www.insofter.pl 16
przebywających w środku mierzonego obiektu. MoŜe ono teŝ zawierać dowolną kombinacje tych wielkości. Widok tabelaryczny i wykres. Gotowe zestawienie moŝna przeglądać w postaci tabelarycznej lub w postaci wykresu. Aplikacja dostarcza równieŝ narzędzi do drukowania utworzonego zestawienia. Eksport danych. Zbudowane zestawienie moŝna udostępnić dla innych systemów i aplikacji, korzystając z dostarczonych przez aplikację narzędzi eksportu danych. Zestawienie moŝna skopiować do schowka, skąd będzie dostępne dla innych aplikacji takich jak Word lub Excel. Zestawienie moŝna równieŝ zapisać w pliku. Formaty plików obsługiwane przez aplikację to tekst oddzielony tabulatorami, HTML, XML. Zapamiętanie i wczytanie zestawienia. Gotowe zestawienie moŝna zapamiętać w pliku jako szablon selekcji danych, skąd moŝna je ponownie wczytać. 12000 10000 8000 Bilans oznacza liczbę ludzi na obiekcie Dane narastają od początku dnia Liczba wejść Liczba wyjść Bilans Wielkość ruchu w dniu 20-06-2003 909 935 1003997 1108 1161 1058 881 1400 1200 1000 800 6000 693 4000 509 536 600 400 2000 285 200 161 0 0 9:00 10:00 11:00 12:00 13:00 14:00 15:00 16:00 17:00 18:00 19:00 20:00 21:00 22:00 0 Rysunek 5. Przykład zestawienia dziennego wejść i wyjść do supermarketu. http://www.insofter.pl 17
Wraz z dokumentacją systemu dostarczany jest Podręcznik UŜytkownika programu z pełnym opisem funkcji i moŝliwości programu. Baza danych SQL Dzisiejsze serwery baz danych są proste w obsłudze, stabilne i szybkie System IZOR market oparty został na serwerze bazy danych SQL, co zapewnia mu duŝą elastyczność i otwartość. Centralna baza danych archiwizuje wyniki pomiarów oraz przechowuje parametry konfiguracyjne wszystkich bramek. Baza danych instalowana jest na jednym z komputerów wchodzących w skład stacji zliczającej, lub w przypadku systemu rozproszonego na Serwerze Rozproszonego Systemu Zliczania. Do danych przechowywanych na serwerze dostęp mają tylko uprawnieni uŝytkownicy systemu. Dostęp ten jest chroniony za pomocą nazwy uŝytkownika i hasła, weryfikowanych przez serwer bazy danych. KaŜdy uŝytkownik ma przypisane zasoby, do których ma dostęp, oraz zakres uprawnień do tych zasobów. Wraz z systemem dostarczana jest wymagana przez system IZOR Market struktura bazy danych, czyli zbiór uŝywanych przez system tabel oraz schemat połączeń między nimi. http://www.insofter.pl 18