Logo

1. Wprowadzenie

Jest to instrukcja obsługi systemu VCAcore - Analizy Zawartości Wideo. W tym podręczniku opisano, jak przygotować i skonfigurować silnik analizy wideo, aby wykrywać interesujące zdarzenia, jednocześnie minimalizując fałszywe alarmy.

System VCAcore - Analizy Zawartości Wideo jest dostępny na wielu platformach:

Funkcjonalność i interfejs użytkownika zostały zaprojektowane tak, aby były spójne na wszystkich platformach, a wszelkie różnice zostaną w razie potrzeby wyróżnione w tym podręczniku.

Menu po lewej stronie zawiera skróty do głównych obszarów tematycznych. Możesz również zapoznać się z tematem Pierwsze Kroki, aby uzyskać podstawowe informacje niezbędne do szybkiego rozpoczęcia pracy.

2. Pierwsze Kroki

Ten podręcznik użytkownika szczegółowo omawia każdy temat, który jest dostępny za pośrednictwem menu. Jednak, aby szybko rozpocząć, podstawowe zagadnienia są wymienione poniżej.

2.1. Podstawy

2.2. Logowanie Użytkownika

Pamiętaj, że domyślna nazwa użytkownika i hasło dla urządzenia VCA to:

2.3. Wydajność Urządzenia

Model Maksymalne obsługiwane strumienie Kodek Bitrate
VBP3510 4x HD @ 15 kl/s LUB 8x D1 @ 15 kl/s LUB 16x VGA @ 15 kl/s H.264 max 1500 kbps
VBP3500 4x HD @ 15 kl/s LUB 8x D1 @ 15 kl/s LUB 16x VGA @ 15 kl/s H.264 max 1500 kbps
VBP2000 1x HD @ 15 kl/s LUB 2x D1 @ 15 kl/s LUB 4x VGA @ 15 kl/s H.264 max 1500 kbps

Zaleca się stosowanie CBR zamiast VBR ze względu na to, że zmienny bitrate (VBR) powoduje dość często dodatkowe niepożadane "szumy" w obrazie. Szczególnie za poruszającymi się obiektami. Zaleca się ustawienie wartości GOP w taki sposób aby klatka kluczowa pojawiała się raz na sekundę.

2.4. Zaawansowane Zagadnienia

Po skonfigurowaniu podstawowych ustawień istotne mogą być następujące zaawansowane opcje:

3. Wykrywanie Urządzeń

Narzędzie do wykrywania urządzeń może być używane do lokalizowania urządzeń VCAbridge w sieci.

Znajdź urządzenie VCAbridge w sieci i wybierz odpowiedni wiersz na liście w narzędziu wykrywania.

Narzędzie do wykrywania urządzeń jest dostępne na stronie internetowej www.cbcpoland.pl

3.1. Następne Kroki

Dowiedz się więcej, jak poruszać się po interfejsie, sprawdź i zaktualizuj wersję VCAcore lub powróć do Pierwszych Kroków.

4. Nawigacja

Ten temat zawiera ogólny przegląd elementów sterujących i kontrolnych interfejsu konfiguracyjnego VCAcore.

4.1. Pasek Nawigacyjny

Interfejs użytkownika VCA zawiera stały pasek nawigacyjny wyświetlany w górnej części okna.

Na tym pasku nawigacji znajduje się wiele elementów, z których każdy jest opisany poniżej:

4.2. Menu Boczne

Kliknięcie ikony wyświetla boczne menu nawigacyjne:

Każda strona interfejsu użytkownika VCA jest dostępna z menu bocznego. Ikona obok elementu menu wskazuje, że menu ma elementy podrzędne i można je rozwinąć.

Elementy w menu bocznym są automatycznie rozwijane, aby odzwierciedlić bieżącą lokalizację w interfejsie aplikacji.

4.3. Strona Ustawień

Strona ustawień wyświetla szereg linków do różnych stron konfiguracji:

4.4. Następne Kroki

Dowiedz się więcej o Aktywacji lub powróć do Pierwszych Kroków.

5. Aktywacja

Aby utworzyć źródła i skorzystać z analityki VCAcore, wymagana jest licencja.

W wielu przypadkach VCAcore na platformie VCAbridge jest wstępnie aktywowany w fabryce, a dalsza aktywacja jest konieczna tylko w celu włączenia dodatkowej funkcjonalności. W przypadku VCAserver kod aktywacyjny, powiązany z konfiguracją sprzętową, zostanie dostarczony przez sprzedawcę.

Dodatkowe funkcje można aktywować, wprowadzając nowy kod aktywacyjny do urządzenia. Każda licencja jest ważna tylko dla określonego urządzenia, a każde urządzenie jest jednoznacznie identyfikowane przez kod sprzętowy.

Aby zarządzać aktywacjami oraz by sprawdzić kod sprzętowy, przejdź do strony ustawień licencji:

5.1. Kroki aktywacji dodatkowych funkcji

5.2. Więcej Informacji

Aby uzyskać więcej informacji na temat pełnej gamy dodatkowych funkcji, odwiedź CBC Poland

6. Źródła

Źródła to konfigurowane przez użytkownika wejścia do systemu VCAcore, które obejmują źródła wideo (np. Strumienie RTSP) i źródła inne niż wideo (np. Wejścia cyfrowe). Strona Edytuj źródła umożliwia użytkownikom dodawanie / usuwanie źródeł i edytowanie istniejących źródeł.

Wspólne Właściwości:

6.1. Źródło Wideo

Po dodaniu, źródła wideo są automatycznie łączone z kanałem. Liczba dostępnych źródeł wideo zależy od dostępnej licencji.

6.1.1. Plik

Źródła plików przesyłają strumień wideo z lokalnego pliku przykładowego osadzonego w oprogramowaniu VCAcore.

Właściwości

6.1.2. Rtsp

Źródła Rtsp przesyłają strumień wideo ze zdalnych źródeł RTSP, takich jak kamery IP i kodery.

Właściwości:

6.1.3. Przykładowe URI RTSP

rtsp://ip-kamery:port-rtsp/strumień

rtsp://użytkownik:hasło@ip-kamery:port/strumień

Najlepszym sposobem na sprawdzenie prawidłowego adresu URI RTSP do kemery lub rejestratora, jest sprawdzenie jego za pomocą narzędzia ONVIF Device Manager, o ile dane urządzenie wspiera protokół ONVIF.

Poniżej przykładowe URI dla różnych producentów (domyślnie drugi strumień):

Uwaga - W przypadku niektórych rozwiązań Dahua (Kamery Analogowe) należy zwrócić uwagę na ustawienia kodowania wideo, w niektórych przypadkach należy zmodyfikować ustawienia I-Frame, lub przepustowości, a czasem nawet zmienić kodek z H264H na zwykły H264 aby silnik prawidłowo śledził obiekty.

Uwaga - Zabrania się używania Smart Kodeków, albowiem modyfikują one obraz wynikowy.

Optymalne i zalecane parametry strumienia do poprawnej Analizy

Kamery, które na powyższych ustawieniach nie uzyskują dostatecznej jakości obrazu (widoczne artefakty kodowania) nie powinny być używane z Mostkiem, artefakty te będą wpływać na możliwość pojawienia się fałszywych wzbudzeń przy częstych zmianach sceny (chmury, załączenia świateł).

6.1.4. Źródło Milestone

Źródła Milestone przesyłają strumień wideo z serwera Milestone XProtect VMS

Właściwości:

6.2. Inne Źródła

Różne inne źródła niż wideo są dostępne dla użytkownika. Po dodaniu, można je następnie przypisać do Akcji.

6.2.1. Interwał

Źródła interwałów mogą być wykorzystywane do okresowego generowania zdarzeń, np. test (heartbeat), aby sprawdzić, czy urządzenie nadal działa.

Właściwości:

6.2.2. Wejście Cyfrowe

Jeśli dostępny jest moduł wejść cyfrowych, będą one widoczne na liście innych źródeł.

Właściwości:

7. Akcje

Akcje są wyjściami dowolnie konfigurowanymi przez użytkownika, które mogą być wyzwalane przez różne zdarzenia występujące w VCAcore.

Wspólne Właściwości:

7.1. Źródła Akcji

Każda akcja może mieć przypisane wiele źródeł zdarzeń. Po przypisaniu źródła zdarzenia do akcji każde zdarzenie tego typu wywoła akcję. Dostępne źródła zdarzeń są pogrupowane według Źródła Wideo i obejmują albo VCA Analytics, reguły logiczne zdefiniowane przez użytkownika (z zaznaczonym polem „Can Trigger Action”) lub zdarzenie utraty sygnału i dowolne Wejście Cyfrowe lub Interwał.

7.2. Typy Akcji

7.2.1. Tcp

Akcja TCP wysyła dane do zdalnego serwera TCP po wyzwoleniu zdarzeniem. Format wysyłanej treści można konfigurować za pomocą zwykłego tekstu i Tokenów, które są zastępowane wartościami specyficznymi dla zdarzenia w momencie generowania zdarzenia.

Zobacz temat Tokeny, aby uzyskać szczegółowe informacje na temat systemu tokenów i przykładowych szablonów.

7.2.2. E-Mail

Akcja e-mail wysyła zdarzenia w formatach domyślnych lub skonfigurowanych przez użytkownika do zdalnych serwerów e-mail.

7.2.3. Http

Akcja HTTP wysyła żądanie HTTP jako text/plain do zdalnego punktu końcowego po uruchomieniu. Adres URL, nagłówki HTTP i treść wiadomości można konfigurować za pomocą zwykłego tekstu i tokenów, które są zastępowane wartościami specyficznymi dla zdarzenia w momencie generowania zdarzenia. Dodatkowo, zdjęcia z kamery mogą być wysyłane jako żądanie multipart/form-data ze skonfigurowanymi zdjęciami dołączonymi jako image/jpeg.

Zobacz temat Tokeny, aby uzyskać szczegółowe informacje na temat systemu tokenów i przykładowych szablonów.

7.2.4. Wyjście Cyfrowe

Wyjście cyfrowe jest logiczną reprezentacją fizycznego kanału wyjściowego. Aby skonfigurować właściwości fizycznego kanału wyjściowego, takie jak czas aktywacji, przejdź na stronę WE/WY Cyfrowe.

7.2.5. Milestone

Akcja Milestone XProtect Event Server wysyła zdarzenia VCA do serwera zdarzeń Milestone XProtect VMS. Więcej informacji można znaleźć w temacie Milestone XProtect.

7.2.6. Uzbrojenie

Akcja Uzbrajania ustawia stan urządzenia na uzbrojony po wyzwoleniu.

7.2.7. Rozbrojenie

Rozbrojenie ustawia stan urządzenia na rozbrojenie po wyzwoleniu.

7.3. Stan Uzbrojenia / Rozbrojenia

Funkcja Uzbrajania / Rozbrajania umożliwia wyłączenie / włączenie wszystkich skonfigurowanych akcji. Na przykład, użytkownicy mogą chcieć wyłączyć wszystkie akcje alarmowe, gdy aktywność na obiekcie jest normalna i oczekiwana (np. podczas normalnych godzin pracy) i ponownie włączyć akcje, gdy aktywność na obiekcie nie jest oczekiwana.

Stan Uzbrajania / Rozbrajania można przełączać ręcznie, klikając ikonę kłódki w Pasku Nawigacyjnym lub używając akcji uzbrojenia lub rozbrojenia powiązanej z wejściami cyfrowymi lub komendami.

7.4. Dodanie Mostka do Safestar

Do Akcji w mostku należy dodać dwie konfiguracje powiadomień HTTP, aby mostek niezależnie wysyłał zdarzenia do obsługi w Safestar, nieważne czy dodaliśmy integrację czy nie, ta czynność jest obowiązkowa. Mostek też może działać autonomicznie jako nadajnik alarmów w Safestar (bez wideo):

Przechodzimy do strony Ustawień klikając na ikonę kolejnie otiweramy "Edit Actions" a następnie dodajemy akcję HTTP klikając na "Add Action +".

W polu Name wpisujemy nazwę, np. Safestar Alarmy, następnie klikamy w ikonę aby rozwinąć szczegółową konfigurację.

Następnie w polu URI wklejamy w całości poniższy ciąg, a w polu Port wpisujemy 80.

http://app.safestar.pl/videoapi/ganz/?alarm=ALARM_VCA&usn={{host}}&tp={{type.string}}&tpname={{name}}&zn={{#Zone}}{{id}}{{/Zone}}&ch={{#Channel}}{{id}}{{/Channel}}&rl={{#Rule}}{{id}}{{/Rule}}&cl={{#Object}}{{#Classification}}{{value}}{{/Classification}}{{/Object}}

Resztę pozostawiamy bez zmian, przewijamy teraz stronę na sam dół.

W polu Method wybieramy POST, zaznaczamy opcję Send Snapshots (wysyłanie zdjęć ze zdarzenia), możemy dostosować ich jakość Snapshot Qualtiy (jeśli ma to znaczenie, zmniejszy lub zwiększy nam zużycie internetu), następnie wybieramy odstęp między zdjęciami (Interval between snapshots), ilość zdjęć zrobionych przed zdarzeniem (Number of snapshots before event) oraz po zdarzeniu (Number of snapshots after event).

Domyślnie możemy wpisać w tych trzech polach 10, daje najlepsze efekty, natomiast jeśli chcemy zaoszczędzić na łączu internetowym można ilość zdjęć ograniczyć.

Ostatnią opcją jest Always Trigger (Wyzwalaj Zawsze), gdy nie zaznaczymy tej opcji, Mostek będzie reagował na stan uzbrojenia / rozbrojenia i tym samym, wysyłał zdarzenia do Safestar tylko wtedy gdy jego stan jest uzbrojony i odwrotnie gdy nie uzbrojony nie będzie marnował łącza i wysyłał jakichkolwiek zdarzeń.

Jeśli mamy skonfigurowane już jakieś kanały, w tym miejsu też wybieramy, z których kanałów chcemy wysyłać zdarzenia do Safestar, klikając w "Add Source +" mamy możliwość wyboru kanału Analizy (Analytics), Utraty Połączenia z Kamerą (Loss of Signal), Naruszeń Wejść Cyfrowych (DI1) lub też sygnałów testowych Interval nazwanym tu Safestar Test.

Dodatkowe sygnały jak Interwał testów wysyłanych z Mostka lub naruszeń wejść cyfrowych, w pierwszej kolejności musimy dodać je w Innych Źródłach (Other Sources)

WAŻNA UWAGA: Pamiętajmy, że w przypadku gdy włączamy sterowanie uzbrajaniem / rozbrajaniem Mostka, do tej pierwszej dodanej akcji przy odznaczonym "Always Trigger" NIE DODAJEMY sygnałów takich jak Loss of Signal, Interval czy Naruszeń Wejść DI. W tym celu należy dodać nową identyczną akcję jak powyższa, nazwać ją np. Safestar Testy i zaznaczyć opcję "Always Trigger" aby Mostek zawsze wysyłał te informacje niezależnie czy jest uzbrojony czy rozbrojony!

To już prawie wszystko, przechodzimy teraz na stronę Aplikacji Stacji Monitoringu Safestar (DMSI Sp. z o.o.), logujemy się na swoje konto, przechodzimy do URZĄDZEŃ WIDEO i dodajemy nowe urządzenie wybierając kafelek GANZ by CBC. Podajemy zewnętrzny adres Mostka, port komunikacji domyślnie 80, port wideo domyślnie 554, oraz Użytkownika i Hasło, KLIKAMY "Dalej...".

UWAGA!! W przypadku wystawiania urządzeń na zewnątrz na domyślnych portach, KONIECZNIE zmieniamy domyślne hasło do urządzenia, za pozostawienie domyślnego - NIE ODPOWIADAMY!

Na kolejnej podstronie, bardzo ważne są 4 pola. Pierwsze z nich to Nazwa, która jest pobierana z urządzenia, jest to numer sprzętowy nadajnika po jakim jest rozpoznawany w Safestar. Można go zmienić w Mostku w ustawieniach sieci, edytując Host Name, pamiętając przy tym by później zmienić go też na identyczny w Safestar.

Kolejne pole to Nazwa wyświetlana urządzenia w Safestar, możemy tu wpisać dowolną nazwę tak aby urządzenie było łatwo rozpoznać w systemie. Następnie podajemy Obiekt, do którego urzadzenie ma należeć oraz zaznaczamy aby automatycznie stworzyło nadajnik, to wszystko klikamy "Zapisz"

Wyczerpujące informacje jak dodać mostek krok po kroku, znajdziesz w poniższym materiale szkoleniowym w postaci wideo.

8. WE/WY Cyfrowe

VCA obsługuje sprzęt wejść i wyjść cyfrowych do współpracy z systemami innych producentów. Wejścia cyfrowe mogą być używane jako wyzwalacze dla zdarzeń w VCAcore, a wyjścia cyfrowe mogą być wyzwalane przez VCAcore lub inne zdarzenie systemowe.

Konfiguracja wejść i wyjść cyfrowych składa się z trzech zadań:

8.1. Konfiguracja Wyjść Cyfrowych

Na stronie Ustawienia wybierz Edit Digital Outputs, aby uzyskać dostęp do konfiguracji wyjść w urządzeniu.

Strona konfiguracji cyfrowego urządzenia wyjściowego zawiera sekcję dla każdego wyjścia. Należy pamiętać, że liczba dostępnych wyjść zależy od konkretnego używanego modelu urządzenia.

8.1.1. Wyjścia Cyfrowe

Wyjścia cyfrowe mogą być wyzwalane przez szereg źródeł zdarzeń analitycznych. Każdy kanał wyjściowy ma następujące właściwości:

Domyślny Stan DO Nieaktywne DO Aktywne
Normalnie Otwarty Otwarty (Low) Zamkniety (High)
Normalnie Zamknięty Zamkniety (High) Otwarty (Low)

Po skonfigurowaniu wyjścia cyfrowego kanały sprzętowe muszą być przypisane do Akcji.

8.2. Połączenia Cyfrowych WE/WY

W urządzeniu VCAbridge jest dostępnych wiele wbudowanych cyfrowych kanałów WE/WY. Różne modele obsługują różne ilośći WE/WY. Szczegółowe informacje na temat wyprowadzeń złącza WE/WY można znaleźć w podręczniku szybkiego startu dołączonym do urządzenia. Podręczniki szybkiego startu są również dostępne na stronie CBC Poland

8.3. Źródła i Akcje

Aby cyfrowe kanały WE/WY mogły współdziałać z VCAcore i zdarzeniami systemowymi, należy utworzyć Źródła dla wejść cyfrowych i Akcje dla wyjść cyfrowych.

8.4. Tryb Wejścia Cyfrowego

Zobacz stronę Ustawienia Systemu, aby uzyskać więcej opcji konfiguracji wejść cyfrowych.

9. Kanały

9.1. Strona Podglądu Kanałów

Po skonfigurowaniu kanału za pomocą odpowiedniego Źródła Wideo można go wyświetlić na stronie Podgląd Kanałów. Miniatura (lub komunikat o błędzie) jest wyświetlany dla każdego skonfigurowanego kanału. Należy zauważyć, że wyświetlane tu miniatury są odświeżane co kilka sekund, nie jest to płynny podgląd.

Kliknij w miniaturę, aby wyświetlić kanał oraz skonfigurować ustawienia związane z VCAcore.

9.2. Podgląd Kanału

Po kliknięciu kanału wyświetlany jest pełny widok strumienia wideo danego kanału wraz ze skonfigurowanymi strefami, licznikami i regułami.

Karta z ikoną jest wyświetlana po prawej stronie strony. Kliknij ją, aby otworzyć menu ustawień kanału.

9.2.1. Menu Ustawień Kanału

To menu zawiera różne przydatne linki do konfiguracji różnych aspektów kanału:

9.3. Następne Kroki

Gdy skonfigurowaliśmy już kanał możemy przejść do konfigurowania stref i reguł w celu wykrywania określonych scenariuszy.

10. Strefy

Strefy to obszary wykrywania, na których działają reguły VCAcore. Aby wykryć określone zachowanie, należy skonfigurować strefę, aby określić obszar, w którym reguła ma zastosowanie.

10.1. Dodawanie Strefy

Strefy można dodawać na wiele sposobów:

10.2. Menu Kontekstowe (LPM)

Kliknięcie prawym przyciskiem myszy lub przytrzymanie przycisku (na urządzeniach mobilnych) powoduje wyświetlenie menu kontekstowego zawierającego polecenia specyficzne dla bieżącego kontekstu.

Możliwe działania z menu kontekstowego to:

10.3. Zmiana Pozycji Strefy

Aby zmienić położenie strefy, kliknij i przeciągnij strefę do nowej pozycji. Aby zmienić kształt strefy, przeciągnij węzły, aby utworzyć wymagany kształt. Nowe węzły można dodawać, klikając dwukrotnie krawędź strefy lub klikając ikonę dodawania węzła z menu kontekstowego.

10.4. Ustawienia Specyficzne Strefy

Menu konfiguracji strefy zawiera szereg parametrów konfiguracji specyficznych dla strefy:

10.5. Usuwanie Strefy

Strefy można usuwać w następujący sposób:

10.6. Następne Kroki

Po skonfigurowaniu strefy można dodać reguły do wykrywania określonych scenariuszy. Aby uzyskać więcej informacji, patrz Konfiguracja Reguł.

11. Reguły

Reguły są dodawane do stref w celu wykrywania określonych zdarzeń. Przykładami reguł, które można zastosować, są wykrywanie obecności obiektu w strefie lub wykrywanie obiektu poruszającego się w określonym kierunku w strefie.

Reguły są konfigurowane w tym samym miejscu, co strefy na stronie Strefy.

11.1. Dodawanie Reguły

Wybierz strefę, do której reguła powinna zostać dodana, i kliknij przycisk Dodaj Regułę . Wybierz żądaną regułę z menu rozwijanego.

Aby usunąć regułę, kliknij odpowiednią ikonę usuwania.

11.2. Ogólne Pojęcia

11.2.1. Wyświetlanie Obiektów

Wykryte obiekty opatrzone są ramką i śladem. Obiekty mogą być renderowane (wyświetlane) w dwóch stanach:

Po wyzwoleniu zdarzenia domyślne ustawienia renderują szczegóły zdarzenia w dolnej połowie strumienia wideo.

11.2.2. Trasa Obiektu

Ślad pokazuje historię, gdzie był obiekt. W zależności od kalibracji ślad może być rysowany od środka (mid-bottom) lub środkowego dolnego (mid-bottom) punktu obiektu. (Zobacz Zaawansowane Ustawienia, aby uzyskać więcej informacji).

11.2.3. Ważność Trasy

Ślad jest ważny dla określenia, w jaki sposób reguła jest uruchamiana. Przecięcie punktu trasy ze strefą lub linią określa, czy reguła jest aktywowana, czy nie. Poniższy rysunek ilustruje ten punkt: niebieski ślad pojazdu przecina strefę wykrywania i jest wyświetlany na czerwono. I odwrotnie, podczas gdy biały pojazd przecina strefę wykrywania, jego ślad nie przecina się (jeszcze) i dlatego nie wywołał reguły i jest wyświetlany na żółto.

11.3. Typ Reguły

Zachowanie każdego z typów reguł zostało wyjaśnione poniżej.

11.3.1. Presence - Obecność

Obiekty znajdujące się w strefie lub przechodzące przez linię wyzwalają regułę i wyzwalają zdarzenie.

11.3.2. Direction - Kierunek

Reguła kierunku wykrywa obiekty poruszające się w określonym kierunku. Skonfiguruj kierunek i kąt akceptacji, przesuwając strzałki na widgecie sterowania kierunkiem. Główny kierunek jest wskazywany przez dużą środkową strzałkę. Kąt akceptacji jest kątem pomiędzy dwiema mniejszymi strzałkami.

Obiekty, które poruszają się w skonfigurowanym kierunku (w granicach kąta akceptacji), przez strefę lub linię uruchamia regułę i wyzwala zdarzenie.

Poniższy rysunek ilustruje, w jaki sposób biały samochód poruszający się w skonfigurowanym kierunku uruchamia regułę, podczas gdy inne obiekty nie.

Parametry reguł można również skonfigurować w menu sterowania strefami:

11.3.3. Dwell - Przebywanie

Obiekty, które przebywają w strefie dłużej niż określony czas, uruchamiają regułę i wyzwalają zdarzenie.

Na poniższym zdjęciu osoba była w strefie dłużej niż 5 sekund, podczas gdy pojazd nie. Stąd osoba generuje zdarzenie, a pojazd nie.

11.3.4. Stopped - Zatrzymanie

Reguła zatrzymana wykrywa obiekty, które są nieruchome w strefie dłużej niż określony czas. Uwaga: Reguła zatrzymana nie wykrywa pozostawionych obiektów. Wykrywa tylko obiekty, które poruszyły się w pewnym momencie, a następnie stały się nieruchome.

11.3.5. Enter and Exit - Wejście i Wyjście

Reguła Wejścia wykrywa, kiedy obiekty wchodzą do strefy. Innymi słowy, gdy obiekty przecinają granicę strefy z zewnątrz do wnętrza.

I odwrotnie, reguła wyjścia wykrywa, kiedy obiekt opuszcza strefę: gdy przekroczy granicę strefy od wewnątrz na zewnątrz.

Uwaga: Reguły Wejścia i Wyjścia różnią się od reguł Pojawienia się i Zniknięcia, następująco:

11.3.6. Appear and Disappear - Pojawienie się i Zniknięcie

Wyświetlana reguła wykrywa obiekty, które zaczynają być śledzone w strefie, np. osoba, która pojawia się na scenie z drzwi.

I odwrotnie, reguła znikania wykrywa obiekty, które przestają być śledzone w strefie, np. osoba, która wychodzi ze sceny przez drzwi.

Uwaga: reguły Pojawienia się i Zniknięcia różnią się od reguł Wejścia i Wyjścia opisanych w regułach Wejścia i Wyjścia.

11.3.7. Speed - Prędkość

Reguła prędkości wykrywa obiekty poruszające się w zakresie prędkości określonych przez dolną i górną granicę.

Uwaga: Kanał musi być skalibrowany, aby filtr prędkości był dostępny.

Poniższy rysunek ilustruje, w jaki sposób reguła prędkości jest uruchamiana przez samochód jadący z prędkością 52 km/h, ale osoba poruszająca się z prędkością 12 km/h jest poza skonfigurowanym zakresem (50-200 km/h), a zatem nie wyzwala reguły.

11.3.8. Tailgating

Reguła Tailgating wykrywa obiekty, które przechodzą przez strefę lub linię w krótkim odstępie od siebie. Limit czasu dla obiektu do przejścia bez wyzwolenia reguły tailgating jest konfigurowany w Strefach:

W tym przykładzie obiekt 1 ma zamiar przekroczyć linię wykrywania. Inny obiekt (obiekt 2) podąża za nim. Próg wykrywania jest ustawiony na 5 sekund. Oznacza to, że każdy obiekt przekraczający linię w ciągu 5 sekund od obiektu, który już przekroczył linię, wyzwoli regułę ustawiania obiektu.

Obiekt 2 przecina linię w ciągu 5 sekund od obiektu 1. Spowoduje to uruchomienie filtra ogonu (Tailgating) i wyzwolenia zdarzenia.

11.3.9. Filtr Klasyfikacji Obiektów

Filtr klasyfikacji obiektów pozwala regułom działać tylko na wybranych klasach obiektów (np. Osoby, Pojazdy)

Poprzedni obraz ilustruje, w jaki sposób reguła Uwzględnij (Include) z wybraną klasą Osoba zalicza tylko obiekty Osoby w regule obecności. Pojazd w strefie jest filtrowany, ponieważ klasa Pojazd nie jest uwzględniona w wyborze filtra klasyfikacji.

Uwaga: kanał musi być skalibrowany, aby filtr klasyfikacji obiektów był dostępny.

11.3.10. Linia Zliczająca

Linia zliczająca jest filtrem wykrywania zoptymalizowanym do dwukierunkowego zliczania obiektów (np. Ludzi lub Pojazdów) w bardziej zatłoczonych scenariuszach wykrywania. Przykłady takich aplikacji mogą obejmować:

W niektórych scenach, takich jak wejścia z zainstalowaną kamerą nad głową, linia zliczająca jest skuteczniejsza w liczeniu Ludzi czy Pojazdów niż przy użyciu liczników podłączonych do np. reguły obecności.

Zdarzenie jest generowane za każdym razem, gdy obiekt przekracza linię w wybranym kierunku. Jeśli wiele obiektów przekracza linię, generowanych jest wiele odpowiednich zdarzeń. Zdarzenia generowane przez linię zliczającą można powiązać z licznikami w prosty sposób sposób.

UWAGA: Maksymalna liczba filtrów linii zliczającej, które można zastosować dla każdego kanału wideo, wynosi 5.

11.3.10.1. Włączenie Linii Zliczającej

Linia zliczania jest włączana przez dodanie reguły Linii Zliczającej do linii wykrywania. Kliknij linię i dodaj regułę Linii Zliczającej:

Linia zliczająca ma wiele opcji konfiguracji, każda jest opisana poniżej:

11.3.10.2. Przypisywanie Liczników do Linii Zliczających

Linia zliczająca sama generuje zdarzenia, gdy zostanie wykryty obiekt, który ma być zliczony. Aby policzyć zdarzenia, można utworzyć liczniki (po jednym dla każdego kierunku) i skonfigurować je do zliczania zdarzeń generowanych przez linię. Aby utworzyć liczniki, zobacz temat Liczniki.

11.3.10.3. Kalibracja Linii Zliczającej

Aby generować dokładne zliczenia, linia zliczająca wymaga kalibracji. W przeciwieństwie do silnika śledzenia obiektów, nie można jej wykonać na poziomie ogólnym dla całej sceny za pomocą narzędzia Kalibracja 3D. Dzieje się tak, ponieważ linia licząca nie zawsze jest umieszczona na płaszczyźnie podłoża: może być umieszczona w dowolnej orientacji w dowolnym miejscu sceny. Na przykład linia zliczająca może być skonfigurowana pionowo z widokiem z boku kamery.

Zamiast narzędzia do kalibracji 3D, linia zliczania ma własne ustawienie kalibracji. Dwie linijki w równej odległości od środka linii reprezentują szerokość oczekiwanego obiektu. Dzięki temu linia zliczająca może odrzucić szum, a także zliczać wiele obiektów.

Aby skalibrować linię zliczającą:

11.3.10.4. Diagnostyka Kalibracji Linii Zliczającej

Aby umożliwić użytkownikowi dokładniejsze skonfigurowanie kalibracji linii zliczania, szerokości wykrytych obiektów są wyświetlane obok linii zliczającej, gdy obiekty przez nią przechodzą. Domyślnie ta opcja wyświetlania jest włączona. Jeśli jednak nie pojawi się, upewnij się, że opcja jest włączona w ustawieniach Nadrukowywania Adnotacji.

Informacja o kalibracji jest renderowana jako czarno-białe linie po obu stronach linii zliczającej na stronie konfiguracji Strefy. Każda linia reprezentuje obiekt wykryty przez algorytm zliczania. Szerokość linii pokazuje szerokość obiektu wykrytego przez linię. Kilka ostatnich detekcji jest wyświetlanych dla każdego kierunku, przy czym najnowszy pojawia się najbliżej linii zliczania.

Każde wykrycie jest liczone jako liczba obiektów na podstawie bieżącej kalibracji szerokości. Jest to wyświetlane w następujący sposób:

Wykorzystując informacje zwrotne z adnotacji diagnostycznych, można precyzyjnie dostosować kalibrację szerokości, aby policzyć obiekty o prawidłowym rozmiarze i odfiltrować fałszywe zliczenia.

11.3.10.5. Filtr Cieni

Linia zliczająca zawiera filtr cienia, który ma na celu usunięcie efektów cieni obiektów wpływających na algorytm zliczania. Cienie mogą powodować niedokładne wyniki zliczania, sprawiając, że obiekt wydaje się większy niż jego prawdziwy rozmiar lub łącząc dwa lub więcej obiektów razem. Jeśli cienie powodują niedokładne zliczanie, należy włączyć filtr cienia, zaznaczając pole wyboru Filtruj Cienie (Filter Shadows) dla linii. Zaleca się, aby filtr cienia był włączony tylko wtedy, gdy występują cienie, ponieważ algorytm może pomylić pewne części obiektu z cieniami, co może prowadzić do gorszych wyników zliczania. Dotyczy to zwłaszcza obiektów, które mają niewielki kontrast w porównaniu z tłem (np. Ludzie noszą czarne płaszcze na czarnym dywanie).

11.4. Następne Kroki

Dowiedz się, jak skonfigurować Liczniki na kanale.

12. Reguły Logiczne

Reguły logiczne VCAcore służą do wykrywania określonych zdarzeń w strumieniu wideo. Mechanizm reguł logicznych VCAcore używa dwóch pojęciowych koncepcji do wykrywania zdarzeń:

Korzystając z tych pojęć, łatwo jest zbudować konfiguracje, które są używane do wyzwalania akcji. Mogą to być proste reguły dołączone do stref lub bardziej złożone konfiguracje, w których reguły można łączyć lub rozszerzać za pomocą reguł logicznych. Nadrzędnym celem reguł logicznych jest pomoc w eliminowaniu generowania błędnych zdarzeń przez udostępnienie funkcji odfiltrowania niepożądanych zachowań od wywołania akcji.

Więcej szczegółów na temat różnic między tymi dwoma pojęciami przedstawiono poniżej:

12.1. Podstawowe Dane Wejściowe

Podstawowe dane wejściowe lub reguły mogą być używane tylko do wyzwalania akcji lub jako dane wejściowe do innej reguły. Wejście do reguły można traktować jako warunek wejściowy wymagany do wyzwolenia operatorów logicznych.

Pełna lista podstawowych danych wejściowych to:

12.2. Warunkowe Dane Wejściowe

Warunkowe dane wejściowe to takie, które nie mogą samodzielnie wywołać akcji. Wymagają, aby dodać wejście innej reguły lub reguły logicznej by działały. Przykładem tego jest reguła AND. Reguła AND wymaga dwóch danych wejściowych do porównania w celu działania.

Pełna lista Reguł Warunkowych to:

12.3. Pojęcia Ogólne

12.3.1. Wyświetlanie Obiektu

Po skonfigurowaniu reguł są one stosowane w kanale w czasie rzeczywistym, co pozwala uzyskać informacje o ich działaniu. Obiekty, które wywołały regułę, opatrzone są obwiednią i śladem. Obiekty mogą być renderowane w dwóch stanach:

Jak widać poniżej, po wyzwoleniu zdarzenia domyślne ustawienia renderują szczegóły zdarzenia w dolnej połowie strumienia wideo. Adnotacje klas obiektów w tym przykładzie są generowane gdy kanał jest skalibrowany.

12.3.2. Trasa Obiektu (Ślad)

Ślad pokazuje historię, gdzie był obiekt. W zależności od kalibracji ślad może być rysowany od środka (mid-bottom) lub środkowego dolnego (mid-bottom) punktu obiektu. (Zobacz Zaawansowane Ustawienia, aby uzyskać więcej informacji).

12.3.3. Znaczenie Trasy

Ślad jest znaczący dla określenia, w jaki sposób reguła jest uruchamiana. Przecięcie punktu trasy ze strefą lub linią określa, czy reguła jest aktywowana, czy nie. Poniższy rysunek ilustruje ten punkt: niebieski ślad pojazdu przecina strefę wykrywania i jest wyświetlany na czerwono. I odwrotnie, podczas gdy biały pojazd przecina strefę wykrywania, jego ślad nie przecina się (jeszcze) i dlatego nie wywołał reguły i jest wyświetlany na żółto.

12.4. Konfiguracja Reguł Logicznych

Reguły logiczne można skonfigurować na podstawie poszczególnych kanałów, otwierając wideo tego kanału i klikając podmenu kanału po lewej lub prawej stronie menu ustawień kanału. Konfiguracja jest możliwa w dwóch formach, w trybie zadokowanym, w którym zarówno reguły, jak i strumień wideo są widoczne lub rozszerzonym, w których dostarczana jest reprezentacja w postaci drzewa w celu wizualizacji sposobu łączenia reguł.

Początkowo strona reguł logicznych otwiera się w trybie „zadokowany” obok strumienia wideo na żywo.

Użytkownik może kliknąć przycisk rozwijania (obok przycisku „Dodaj Regułę”), aby przejść do widoku rozszerzonego. Należy pamiętać, że wykres reguł logicznych jest widoczny tylko w widoku rozszerzonym.

W rozszerzonym widoku użytkownik może dodawać reguły i używać Edytora Reguł do łączenia reguł ze sobą. Wykres po prawej stronie jest aktualizowany w czasie rzeczywistym, aby odzwierciedlić zmiany użytkownika.

12.4.1. Tworzenie Reguły Logicznej

Pierwszymi krokami do zdefiniowania reguły logicznej jest dodanie początkowych podstawowych danych wejściowych, skonfigurowanie parametrów reguły i powiązanie ich ze strefą. Kliknij przycisk "Add a Rule" i wybierz żądaną regułę z menu rozwijanego.

Aby usunąć regułę, kliknij odpowiednią ikonę usuwania . Pamiętaj, że reguły dowolnego typu nie mogą być usunięte, jeśli służą jako dane wejściowe do innej reguły. W takim przypadku należy najpierw usunąć drugą regułę.

12.5. Rodzaje Reguł (Podstawowe Dane Wejściowe)

Poniżej znajduje się lista aktualnie obsługiwanych reguł wraz ze szczegółowym opisem każdej z nich.

12.5.1. Presence

Reguła, która wywołuje zdarzenie, w którym obiekt został po raz pierwszy wykryty w określonej strefie.

Uwaga: Reguła Obecności zawiera wiele różnych zachowań, na przykład reguła Obecności zostanie uruchomiona w tych samych okolicznościach, co reguła Enter i Appear. Wyboru odpowiedniej reguły należy dokonać w zależności od scenariusza.

12.5.1.1. Widok Graficzny

12.5.1.2. Widok Formularza

12.5.1.3. Konfiguracja Reguły

Właściwość Opis
Name Nazwa określona przez użytkownika dla tej reguły
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje
Zone Strefa, z którą ta reguła jest powiązana

12.5.2. Direction - Kierunek

Reguła kierunku wykrywa obiekty poruszające się w określonym kierunku. Skonfiguruj kierunek i kąt akceptacji, przesuwając strzałki na widgecie sterowania kierunkiem. Główny kierunek jest wskazywany przez dużą środkową strzałkę. Kąt akceptacji jest kątem pomiędzy dwiema mniejszymi strzałkami.

Obiekty, które poruszają się w skonfigurowanym kierunku (w granicach kąta akceptacji), przez strefę lub linię uruchamia regułę i wyzwala zdarzenie.

Poniższy rysunek ilustruje, w jaki sposób biały samochód poruszający się w skonfigurowanym kierunku uruchamia regułę, podczas gdy inne obiekty nie.

12.5.2.1. Widok Graficzny

12.5.2.2. Widok Formularza

12.5.2.3. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Direction#"
Angle Określa, czy zdarzenia generowane przez tę regułę wywołują akcje 0
Acceptance Dozwolona wariancja z każdej strony głównego kierunku, która nadal wyzwoli regułę 0
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Zone Strefa, z którą ta reguła jest powiązana None

12.5.3. Stopped - Zatrzymanie

Reguła zatrzymana wykrywa obiekty, które są nieruchome w strefie dłużej niż określony czas.

Uwaga: Reguła zatrzymana nie wykrywa pozostawionych obiektów. Wykrywa tylko obiekty, które poruszyły się w pewnym momencie, a następnie stały się nieruchome.

12.5.3.1. Widok Graficzny

12.5.3.2. Widok Formularza

12.5.3.3. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Stopped#"
Zone Strefa, z którą ta reguła jest powiązana None
Time Dozwolona wariancja z każdej strony głównego kierunku, która nadal wyzwoli regułę 0
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active

12.5.4. Enter and Exit - Wejście i Wyjście

Reguła Wejścia wykrywa, kiedy obiekty wchodzą do strefy. Innymi słowy, gdy obiekty przecinają granicę strefy z zewnątrz do wnętrza.

I odwrotnie, reguła wyjścia wykrywa, kiedy obiekt opuszcza strefę: gdy przekroczy granicę strefy od wewnątrz na zewnątrz.

Uwaga: Reguły Wejścia i Wyjścia różnią się od reguł Pojawienia się i Zniknięcia, następująco:

12.5.4.1. Widok Graficzny

12.5.4.2. Widok Formularza

12.5.4.3. Konfiguracja Reguły - Enter

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Enter#"
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Zone Strefa, z którą ta reguła jest powiązana None

12.5.4.4. Konfiguracja Reguły - Exit

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Exit#"
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Zone Strefa, z którą ta reguła jest powiązana None

12.5.5. Appear and Disappear - Pojawienie się i Zniknięcie

Wyświetlana reguła wykrywa obiekty, które zaczynają być śledzone w strefie, np. osoba, która pojawia się na scenie z drzwi.

I odwrotnie, reguła znikania wykrywa obiekty, które przestają być śledzone w strefie, np. osoba, która wychodzi ze sceny przez drzwi.

Uwaga: reguły Pojawienia się i Zniknięcia różnią się od reguł Wejścia i Wyjścia opisanych w regułach Wejścia i Wyjścia.

12.5.5.1. Widok Graficzny

12.5.5.2. Widok Formularza

12.5.5.3. Konfiguracja Reguły - Appear

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Appear#"
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Zone Strefa, z którą ta reguła jest powiązana None

12.5.5.4. Konfiguracja Reguły - Disappear

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Disappear#"
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Zone Strefa, z którą ta reguła jest powiązana None

12.5.6. Obiekt porzucony i usunięty - Abandoned and Removed Object

Reguła porzuconego i usuniętego obiektu jest uruchamiana, gdy obiekt zostanie pozostawiony w zdefiniowanej strefie, np. osoba pozostawiająca torbę na peronie kolejowym lub gdy przedmiot jest usuwany z określonej strefy. Porzucona reguła ma właściwość trwania, która określa czas, przez który obiekt musiał zostać porzucony lub usunięty, aby uruchomić regułę.

Poniżej znajduje się przykładowy scenariusz, w którym torba jest pozostawiona w określonej strefie, co powoduje uruchomienie reguły..

Poniżej znajduje się podobny przykładowy scenariusz, w którym torba jest usuwana ze zdefiniowanej strefy, co powoduje uruchomienie reguły..

Uwaga: Algorytm wykorzystywany do wykrywania porzuconych i usuniętych obiektów jest w każdym przypadku taki sam i dlatego nie może odróżniać obiektów, które zostały porzucone lub usunięte. Wynika to z faktu, że algorytm analizuje tylko zmiany bloków pikseli w stosunku do modelu tła.

12.5.6.1. Widok Graficzny

12.5.6.2. Widok Formularza

12.5.6.3. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Abandoned#"
Zone Strefa, z którą ta reguła jest powiązana None
Duration Okres, przez który obiekt musi zostać porzucony lub usunięty, zanim reguła zostanie uruchomiona 0
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active

12.5.7. Speed

Reguła prędkości wykrywa obiekty poruszające się w zakresie prędkości określonych przez dolną i górną granicę.

Uwaga: Kanał musi być skalibrowany, aby filtr prędkości był dostępny.

Poniższy rysunek ilustruje, w jaki sposób reguła prędkości jest uruchamiana przez samochód jadący z prędkością 52 km/h, ale osoba poruszająca się z prędkością 12 km/h jest poza skonfigurowanym zakresem (50-200 km/h), a zatem nie wyzwala reguły.

12.5.7.1. Widok Graficzny

12.5.7.2. Widok Formularza

12.5.7.3. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Presence#"
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Min Speed Minimalna prędkośc obiektu w km/h która wywołuje akcję 0
Max Speed Maksymalna prędkośc obiektu w km/h która wywołuje akcję 0

12.5.7.4. Typowa Kombinacja Reguł Logicznych

Poniższy przykład logicznej reguły sprawdza, czy obiekt wyzwalający regułę Presence 4 w strefie Center, również przemieszcza się z prędkością pomiędzy 50 a 200 km/h zgodnie z regułą prędkości Speed 3.

Tylko reguła AND Centre Zone Speed jest ustawiona na Can Trigger Actions, co oznacza, że tylko ten składnik reguły logicznej będzie dostępny jako źródło akcji.

12.5.8. Tailgating

Reguła Tailgating wykrywa obiekty, które przechodzą przez strefę lub linię w krótkim odstępie od siebie.

W tym przykładzie obiekt 1 ma zamiar przekroczyć linię wykrywania. Inny obiekt (obiekt 2) podąża za nim. Próg wykrywania jest ustawiony na 5 sekund. Oznacza to, że każdy obiekt przekraczający linię w ciągu 5 sekund od obiektu, który już przekroczył linię, wyzwoli regułę ustawiania obiektu.

Obiekt 2 przecina linię w ciągu 5 sekund od obiektu 1. Spowoduje to uruchomienie filtra ogonu (Tailgating) i wyzwolenia zdarzenia.

12.5.8.1. Widok Graficzny

12.5.8.2. Widok Formularza

12.5.8.3. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Tailgating #"
Zone Strefa, z którą ta reguła jest powiązana None
Duration Maksymalny czas pomiędzy objektami wchodzącym w strefę i wywołującymi alarm 0
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active

12.5.9. Filtr Klasyfikacji Obiektów - Object Classification Filter

Uwaga: Definiowanie filtrów (od fw.1.1.1) znajduje się w Regułąch logicznych. Poniższy opis przedstawia tylko zasadę działania klasyfikacji.

Filtr klasyfikacji obiektów pozwala regułom działać tylko na wybranych klasach obiektów (np. Osoby, Pojazdy)

Obraz ilustruje, w jaki sposób reguła Uwzględnij (Include) z wybraną klasą Osoba zalicza tylko obiekty Osoby w regule obecności. Pojazd w strefie jest filtrowany, ponieważ klasa Pojazd nie jest uwzględniona w wyborze filtra klasyfikacji.

Uwaga: kanał musi być skalibrowany, aby filtr klasyfikacji obiektów był dostępny.

12.5.9.1. Widok Graficzny

12.5.9.2. Widok Formularza

12.5.9.3. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "ObjectFilter #"
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Input Strefa, z którą ta reguła jest powiązana None
Classes Klasa obiektu która wywołuje alarm None

12.5.9.4. Typowa Kombinacja Reguł Logicznych

W poniższym przykładzie logiczna reguła filtruje obiekty z reguły Presence. Klasy obiektów Person i Group of People wywołują alarm natomiast klasy typu Vehicle i Clutter w tym przypadku nie wywyłują alarmu. Odznaczenie Can Trigger Actions w regule robi z niej regułę wejściową Input dla filtra ObjectFilter23 który wywołuje akcję.

12.5.10. Counter

Liczniki mogą być skonfigurowane do liczenia, ile razy reguła jest uruchamiana, na przykład liczba osób przekraczających linię. Reguła licznika jest przeznaczona do wykorzystania na trzy sposoby:

Więcej niż jedną regułę można przypisać do dowolnego z trzech wejść licznika. Pojedynczy licznik nie powinien być wykorzystywany jednocześnie do zliczania zajmowania-occupacy i zwiększania-increment/zmniejszania-decrement.

12.5.10.1. Pozycjonowanie Licznika

Liczniki można przemieszczać, chwytając „handle” pod nazwą licznika i przesuwając licznik w żądane miejsce.

12.5.10.2. Widok Graficzny

12.5.10.3. Widok Formularza

12.5.10.4. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Counter #"
Increment Po wyzwoleniu reguły wartość licznika będzie zwiększana. Licznik jest zwiększany o dołączone reguły (+1 dla każdego wyzwalacza reguły) None
Decrement Po wyzwoleniu reguły wartość licznika zostanie zmniejszona. Licznik jest zmniejszany o dołączone reguły (-1 dla każdego wyzwalacza reguły) None
Occupancy Licznik pokaże aktualną liczbę aktywnych wyzwalaczy w strefie None
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active
Reset Counter Przycisk którym możemy zresetować licznik do zera None

12.5.10.5. Typowa Kombinacja Reguł Logicznych

Poniższy przykład licznika zwiększa licznik oparty na dwóch regułach Enter Center i Enter Top, co oznacza, że gdy którakolwiek z tych reguł wyzwala licznik zostanie zwiększony o + 1. Licznik również zmniejsza wartość o 1 na podstawie akcji Decrement bazując na regule Exit za każdym razem, gdy obiekt opuści strefę Centre.

Tylko licznik dla reguły Counter jest ustawiony na Can Trigger Actions, co oznacza, że tylko ten składnik reguły logicznej będzie dostępny jako źródło akcji. W takim przypadku akcja wykorzystująca tę regułę jako źródło będzie uruchamiała zmianę licznika.

12.5.11. Linia Zliczająca - Counting Line

Linia zliczająca jest filtrem wykrywania zoptymalizowanym do dwukierunkowego zliczania obiektów (np. Ludzi lub Pojazdów) w bardziej zatłoczonych scenariuszach wykrywania. Przykłady takich aplikacji mogą obejmować:

W niektórych scenach, takich jak wejścia z zainstalowaną kamerą nad głową, linia zliczająca jest skuteczniejsza w liczeniu Ludzi czy Pojazdów niż przy użyciu liczników podłączonych do np. reguły obecności.

Zdarzenie jest generowane za każdym razem, gdy obiekt przekracza linię w wybranym kierunku. Jeśli wiele obiektów przekracza linię, generowanych jest wiele odpowiednich zdarzeń. Zdarzenia generowane przez linię zliczającą można powiązać z licznikami w prosty sposób sposób.

UWAGA: Maksymalna liczba filtrów linii zliczającej, które można zastosować dla każdego kanału wideo, wynosi 5.

12.5.11.1. Kalibracja Linii Liczącej

Aby generować dokładne zliczenia, linia zliczająca wymaga kalibracji. W przeciwieństwie do silnika śledzenia obiektów, nie można jej wykonać na poziomie ogólnym dla całej sceny za pomocą narzędzia Kalibracja 3D. Dzieje się tak, ponieważ linia licząca nie zawsze jest umieszczona na płaszczyźnie podłoża: może być umieszczona w dowolnej orientacji w dowolnym miejscu sceny. Na przykład linia zliczająca może być skonfigurowana pionowo z widokiem z boku kamery.

Zamiast narzędzia do kalibracji 3D, linia zliczania ma własne ustawienie kalibracji. Dwie linijki w równej odległości od środka linii reprezentują szerokość oczekiwanego obiektu. Dzięki temu linia zliczająca może odrzucić szum, a także zliczać wiele obiektów.

Aby skalibrować linię zliczającą:

12.5.11.2. Informacje Diagnostyczne Kalibracji Linii Liczącej

Aby umożliwić użytkownikowi dokładniejsze skonfigurowanie kalibracji linii zliczania, szerokości wykrytych obiektów są wyświetlane obok linii zliczającej, gdy obiekty przez nią przechodzą. Domyślnie ta opcja wyświetlania jest włączona. Jeśli jednak nie pojawi się, upewnij się, że opcja jest włączona w ustawieniach Nadrukowywania Adnotacji.

Informacja o kalibracji jest renderowana jako czarno-białe linie po obu stronach linii zliczającej na stronie konfiguracji Strefy. Każda linia reprezentuje obiekt wykryty przez algorytm zliczania. Szerokość linii pokazuje szerokość obiektu wykrytego przez linię. Kilka ostatnich detekcji jest wyświetlanych dla każdego kierunku, przy czym najnowszy pojawia się najbliżej linii zliczania.

Każde wykrycie jest liczone jako liczba obiektów na podstawie bieżącej kalibracji szerokości. Jest to wyświetlane w następujący sposób:

Wykorzystując informacje zwrotne z adnotacji diagnostycznych, można precyzyjnie dostosować kalibrację szerokości, aby policzyć obiekty o prawidłowym rozmiarze i odfiltrować fałszywe zliczenia.

12.5.11.3. Filtr Cieni

Linia zliczająca zawiera filtr cienia, który ma na celu usunięcie efektów cieni obiektów wpływających na algorytm zliczania. Cienie mogą powodować niedokładne wyniki zliczania, sprawiając, że obiekt wydaje się większy niż jego prawdziwy rozmiar lub łącząc dwa lub więcej obiektów razem. Jeśli cienie powodują niedokładne zliczanie, należy włączyć filtr cienia, zaznaczając pole wyboru Filtruj Cienie (Filter Shadows) dla linii. Zaleca się, aby filtr cienia był włączony tylko wtedy, gdy występują cienie, ponieważ algorytm może pomylić pewne części obiektu z cieniami, co może prowadzić do gorszych wyników zliczania. Dotyczy to zwłaszcza obiektów, które mają niewielki kontrast w porównaniu z tłem (np. Ludzie noszą czarne płaszcze na czarnym dywanie).

12.5.11.4. Widok Graficzny

12.5.11.5. Widok Formularza

12.5.11.6. Konfiguracja Reguły

Właściwość Opis Standardowa wartość
Name Nazwa określona przez użytkownika dla tej reguły "Line_Counter #"
Zone Strefa, z którą ta reguła jest powiązana None
Direction Włącz liczenie w kierunku „A” lub „B” (jeden kierunek na linię liczenia) None
Enable Width Calibration Kalibracja szerokości do dokładniejszego zliczania None
Width Szerekość kalibracji 0
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje Active

12.5.11.7. Typowa Kombinacja Reguł Logicznych

Poniższy przykład ma dwie linie liczące, Line_Counter A i Line_Counter B każda z nich powiązana ze strefą Center Line w różnych kierunkach zliczania. Line_Counter A jest skonfigurowana do zliczania (increment), Line_Counter B jest skonfigurowana do pomniejszania licznika (decrement). Tylko reguła licznika Counter jest ustawiona do wyzwalania alarmu Can Trigger Actions, co oznacza, że tylko ten składnik reguły logicznej będzie dostępny jako źródło alarmu. W takim przypadku akcja wykorzystująca tę regułę jako źródło będzie uruchamiana przy każdej zmianie licznika.

12.6. Rodzaje Reguł Logicznych (Warunkowe Dane Wejściowe)

Poniżej znajduje się lista aktualnie obsługiwanych reguł logicznych wraz ze szczegółowym opisem każdej z nich.

12.6.1. And

Operator logiczny, który łączy dwie reguły i wywołuje zdarzenia tylko, jeśli oba wejścia są prawdziwe.

12.6.1.1. Widok Graficzny

12.6.1.2. Widok Formularza

12.6.1.3. Konfiguracja Reguły

Właściwość Opis
Name Nazwa określona przez użytkownika dla tej reguły
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje
Input A Pierwsze wejście
Input B Drugie wejście
Per Target Wygeneruj tylko jedno zdarzenie na każdy osobny śledzony obiekt

Jeśli weźmiemy pod uwagę scenę z dwoma regułami obecności połączonymi z dwiema oddzielnymi strefami połączonymi regułą AND, poniższa tabela wyjaśnia zachowanie właściwości Per Target. Zauważ, że obiekt tutaj odnosi się do śledzonego obiektu, jaki wykrył silnik VCA.

Stan Per-Target Wynik
Obiekt A w wejściu A, obiekt B w wejściu B On Wygenerowano dwa zdarzenia, po jednym dla każdego obiektu
Obiekt A w wejściu A, obiekt B w wejściu B Off Wygenerowano tylko jedno zdarzenie

Ponadto ważne jest, aby pamiętać, że gdy wyłączony jest Per-Target, jeśli reguła zostanie wyzwolona, nie zostanie ona ponownie wyzwolona, dopóki nie zostanie zresetowana, tj. Dopóki warunek AND nie będzie już prawdziwy.

12.6.2. Or

Operator logiczny, który łączy dwie reguły i wywołuje zdarzenia, jeśli jedna z nich jest prawdziwe.

12.6.2.1. Widok Graficzny

12.6.2.2. Widok Formularza

12.6.2.3. Konfiguracja Reguły

Właściwość Opis
Name Nazwa określona przez użytkownika dla tej reguły
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje
Input A Pierwsze wejście
Input B Drugie wejście
Per Target Wygeneruj tylko jedno zdarzenie na każdy osobny śledzony obiekt

Jeśli weźmiemy pod uwagę scenę z dwoma regułami obecności połączonymi z dwiema oddzielnymi strefami połączonymi regułą OR, poniższa tabela wyjaśnia zachowanie właściwości Per Target.

Stan Per Target Wynik
Obiekt A na wejściu A, brak obiektu na wejściu B On Wygenerowano dwa zdarzenia, po jednym dla każdego obiektu
Brak obiektu w wejściu A, obiekt B w wejściu B On Wygenerowano tylko jedno zdarzenie (dla obiektu B)
Obiekt A na wejściu A, brak obiektu na wejściu B On Wygenerowano tylko jedno zdarzenie (dla obiektu A)
Obiekt A na wejściu A, brak obiektu na wejściu B Off Wygenerowano tylko jedno zdarzenie
Brak obiektu w wejściu A, obiekt B w wejściu B Off Wygenerowano tylko jedno zdarzenie
Obiekt A na wejściu A, brak obiektu na wejściu B Off Wygenerowano tylko jedno zdarzenie

Ponadto ważne jest, aby pamiętać, że gdy wyłączony jest Per Target, jeśli reguła zostanie wyzwolona, nie zostanie ona ponownie wyzwolona, dopóki nie zostanie zresetowana, tj. Dopóki warunek OR nie będzie już prawdziwy.

12.6.3. Previous

Operator logiczny, który wyzwala zdarzenia wejściowe, które były aktywne w pewnym momencie w poprzednim oknie czasu. To okno jest zdefiniowane między bieżącym czasem a okresem przed bieżącym czasem (określonym przez wartość parametru interwału).

12.6.3.1. Widok Graficzny

12.6.3.2. Widok Formularza

12.6.3.3. Konfiguracja Reguły

Właściwość Opis
Name Nazwa określona przez użytkownika dla tej reguły
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje
Input Reguła Danych Wejściowych
Per Target Wygeneruj tylko jedno zdarzenie na każdy osobny śledzony obiekt
Interval Czas w milisekundach

12.6.4. Continuously

Operator logiczny, który uruchamia zdarzenie, gdy jego reguła wejściowa wystąpiła w sposób ciągły przez czas określony przez użytkownika.

12.6.4.1. Widok Graficzny

12.6.4.2. Widok Formularza

12.6.4.3. Konfiguracja Reguły

Właściwość Opis
Name Nazwa określona przez użytkownika dla tej reguły
Can Trigger Actions Określa, czy zdarzenia generowane przez tę regułę wywołują akcje
Input Reguła Danych Wejściowych
Per Target Wygeneruj tylko jedno zdarzenie na każdy osobny śledzony obiekt
Interval Czas w milisekundach

Biorąc pod uwagę scenę z jedną strefą, regułę obecności powiązaną z tą strefą oraz regułę Continuously dołączoną do tej reguły obecności, gdy właściwość Per-Target jest włączona, reguła wygeneruje zdarzenie dla każdego śledzonego obiektu, który jest stale obecny w strefie. Gdy jest wyłączona, reguła generuje tylko jedno zdarzenie, nawet jeśli w strefie znajduje się wiele śledzonych obiektów. Dodatkowo, gdy Per-Target jest wyłączony, reguła generuje tylko zdarzenia, gdy następuje zmiana stanu - tj. Warunek reguły zmienia się z true na false lub odwrotnie. Gdy opcja Per-Target jest wyłączona, stan zmieni się, gdy:

12.7. Przykłady

12.7.1. Reguła Dwell

Reguła przebywania uruchamia się, gdy obiekt pozostaje w strefie przez określony czas. Regułę przebywania można łatwo zaimplementować jako regułę logiczną, łącząc reguły „Presence (Obecność)” i „Continuously (Ciągle)”. Reguła „Presence (Obecność)” jest dodawana jako pierwsza i połączona ze strefą, a następnie reguła „Continuously (Ciągle)”, która jest powiązana z regułą „Presence (Obecność)”. Parametr interwału reguły „Continuously (Ciągle)” to czas, w którym obiekt musi pozostać w strefie by wyzwolić zdarzenie. Wykres reguły przebywania jest następujący:

Prostym przypadkiem użycia tej reguły jest obszar, w którym wałęsanie się jest zabronione. Reguła przebywania może być używana do wykrywania tego zachowania.

Na poniższym zdjęciu osoba była w strefie dłużej niż 5 sekund, podczas gdy pojazd nie. Stąd osoba generuje zdarzenie, a pojazd nie.

12.7.2. Reguła Double-knock

Reguła „Podwójnego Naruszenia” jest regułą, która uruchamia się, gdy obiekt wchodzi do jednej strefy, po której następuje naruszenie innej. Reguła jest wyzwalana tylko wtedy, gdy obiekt opuszcza pierwszą strefę, a następnie wchodzi w drugą. Odstęp czasu na regule „Previous (Poprzedni)” na wykresie decyduje o tym, ile czasu upłynęło od wejścia obiektu do pierwszej strefy. Wykres reguły podwójnego naruszenia jest następujący:

Regułę można interpretować w następujący sposób: „Obiekt znajduje się w strefie 2, a poprzednio w ciągu ostatnich 1000 milisekund był w strefie 1.”. Ta reguła może być używana jako skuteczny sposób wykrywania wejścia do obszaru. Ponieważ obiekt musi wejść w dwie strefy w określonej kolejności, ma zdolność eliminowania fałszywych zdarzeń, które mogą pojawiać się z reguły Obecności (Presence).

12.7.3. Reguła Presence w A lub B

Ta reguła uruchamia się, gdy obiekt znajduje się w strefie A lub B. Jego wykres jest następujący:

Typowym przypadkiem użycia tej reguły jest posiadanie wielu obszarów, w których dostęp jest zabroniony, ale obszary nie mogą być łatwo objęte jedną strefą. Można utworzyć dwie strefy powiązane z dwiema osobnymi regułami Obecności (Presence), a następnie połączyć je za pomocą reguły Or.

12.8. Uwagi dotyczące użytkowania

13. Liczniki

VCAcore obsługuje liczniki, które można skonfigurować do liczenia różnych rzeczy, takich jak liczba uruchomień reguły lub liczba osób przekraczających linię.

13.1. Dodawanie Liczników

Liczniki można dodawać, klikając prawym przyciskiem myszy (lub przytrzymując na urządzeniach mobilnych) wideo, aby wyświetlić menu kontekstowe:

13.2. Pozycjonowanie Liczników

Liczniki można przemieszczać, chwytając „handle” pod nazwą licznika i przesuwając licznik w żądane miejsce.

13.3. Ustawienia Licznika

Menu konfiguracji licznika zawiera szereg parametrów konfiguracyjnych specyficznych dla licznika:

13.3.1. Typy Wyzwalania Liczników

Można skonfigurować źródła wyzwalania licznika jako Increment, Decrement or Occupancy. Każdy tryb jest opisany poniżej:

13.4. Liczniki - Następne Kroki

Dowiedz się, jak skalibrować kanał.

14. Kalibracja

Kalibracja kamery jest wymagana, aby VCAcore mógł klasyfikować obiekty do różnych klas obiektów. Po skalibrowaniu kanału VCAcore może określić rzeczywiste właściwości obiektu, takie jak prędkość, wysokość i powierzchnia, i odpowiednio klasyfikować obiekty.

Kalibracja kamery jest podzielona na następujące podtematy:

14.1. Włączanie Kalibracji

Domyślnie kalibracja jest wyłączona. Aby włączyć kalibrację na kanale, zaznacz pole wyboru Włącz Kalibrację.

14.2. Elementy Kontrolne Kalibracji

Strona kalibracji zawiera wiele elementów ułatwiających kalibrację kanału tak łatwo, jak to możliwe. Każda z nich jest opisana poniżej.

14.2.1. Nakładka Grafiki 3D

Podczas procesu kalibracji elementy obrazu wideo muszą być dopasowane do nałożonej grafiki 3D. Nałożona grafika 3D składa się z zielonej siatki reprezentującej płaszczyznę podłoża. Na płaszczyźnie podłoża umieszczonych jest kilka elementów mimicznych 3D (figur w kształcie ludzi), które przedstawiają wymiary osoby z bieżącymi parametrami kalibracji. Mimiki kalibracyjne służą do weryfikacji rozmiaru osoby w scenie i mają 1.8 metra wysokości.

Mimiki można przesuwać po scenie, aby dopasować je do ludzi (lub przedmiotów o znanej, porównywalnej wysokości) do osoby.

14.2.2. Sterowanie Myszą

Parametry kalibracji można regulować za pomocą myszy w następujący sposób:

Uwaga: Suwaki w panelu sterowania mogą być również używane do regulacji kąta nachylenia i wysokości kamery.

14.2.3. Elementy Panelu Sterowania

Panel sterowania (pokazany po prawej stronie na powyższym obrazku) zawiera następujące elementy sterujące:

14.2.4. Elementy Menu Kontekstowego

Kliknięcie prawym przyciskiem myszy (lub dotknij i przytrzymaj na tablecie) na siatce wyświetla menu kontekstowe:

Wykonanie tej samej czynności na mimice powoduje wyświetlenie menu kontekstowego mimiki:

Możliwe działania z menu kontekstowego to:

14.3. Kalibracja Kanału

Kalibracja kanału jest konieczna w celu oszacowania parametrów obiektu, takich jak wysokość, powierzchnia, prędkość i klasyfikacja. Jeśli wysokość, kąt nachylenia i pionowe pole widzenia odpowiadające instalacji są znane, można je po prostu wprowadzić jako parametry w odpowiednich polach panelu sterowania.

Jeśli jednak te parametry nie są dokładnie znane, ta sekcja zawiera przewodnik krok po kroku dotyczący kalibracji kanału.

14.3.1. Krok 1: Znajdź Ludzi na Scenie

Znajdź na scenie kilka osób lub obiekty o rozmiarze ludzi. Spróbuj znaleźć osobę w pobliżu kamery i osobę znajdującą się dalej od kamery. Przydatne jest użycie sterowania odtwarzaniem / pauzą, aby wstrzymać wideo, by można było dokładnie umieścić mimikę. Umieść mimiki na górze lub w pobliżu ludzi:

14.3.2. Krok 2: Wprowadź Pionowe Pole Widzenia Kamery

Określenie prawidłowego pionowego pola widzenia jest ważne dla dokładnej kalibracji. Poniższa tabela przedstawia wstępnie obliczone wartości pionowego pola widzenia dla różnych rozmiarów przetworników.

Focal Length(mm) 1 2 3 4 5 6 7 8 9 10 15 20 30 40 50
CCD Size (in) CCD Height(mm)
1/6" 1.73 82 47 32 24 20 16 14 12 11 10 7
1/4" 2.40 100 62 44 33 27 23 19 17 15 14 9 7
1/3.6" 3.00 113 74 53 41 33 28 24 21 19 12 11 9 6
1/3.2" 3.42 119 81 59 46 38 32 27 24 21 16 13 10 7
1/3" 3.60 122 84 62 48 40 33 29 25 23 20 14 10 7 5
1/2.7" 3.96 126 89 67 53 43 37 32 28 25 22 15 11 8 6
1/2" 4.80 135 100 77 62 51 44 38 33 30 27 18 14 9 7 5
1/1.8" 5.32 139 106 83 67 56 48 42 37 33 30 20 15 10 8 6
2/3" 6.60 118 95 79 67 58 50 45 40 37 25 19 13 9 8
1" 9.60 135 116 100 88 77 69 62 56 51 35 27 18 14 11
4/3" 13.50 132 119 107 97 88 80 74 68 48 37 25 19 15

Jeśli tabela nie zawiera odpowiednich parametrów, pionowy FOV można oszacować, oglądając krańce obrazu na górze i na dole. Zauważ, że bez prawidłowego pionowego pola widzenia, uzyskanie prawidłowych wielkości mimik może nie być możliwe, aby dopasować ludzi w różnych pozycjach sceny do nich.

14.3.3. Krok 3: Wprowadź Wysokość Montażu Kamery

Jeśli wysokość kamery jest znana, wpisz ją bezpośrednio. Jeśli wysokość nie jest znana, oszacuj ją jak najdokładniej i wpisz.

14.3.4. Krok 4: Dostosuj Kąt Nachylenia i Wysokość Montażu Kamery

Dostosuj kąt pochylenia kamery (i wysokość, jeśli to konieczne), aż obie mimiki będą w przybliżeniu tego samego rozmiaru, co prawdziwa osoba w tej pozycji na scenie. Kliknij i przeciągnij płaszczyznę podłoża, aby zmienić kąt pochylenia i użyj kółka myszy lub panelu sterowania, aby dostosować wysokość montażu kamery.

Celem jest zapewnienie, że mimiki umieszczane w różnych miejscach na siatce pokrywają się z ludźmi lub obiektami o rozmiarach ludzi na scenie.

Po dostosowaniu parametrów adnotacje dla obiektu będą odzwierciedlać zmiany i odpowiednio klasyfikować obiekty.

14.3.5. Krok 5: Zweryfikuj Konfigurację

Po skalibrowaniu sceny przeciągnij lub dodaj mimikę w różnych miejscach w scenie i sprawdź, czy pojawiają się one w tym samym rozmiarze / wysokości, co prawdziwa osoba. Sprawdź, czy wysokość i obszar zgłoszone przez adnotację VCAcore wyglądają mniej więcej poprawnie. Należy pamiętać, że ustawienia wypalenia w adnotacji w panelu sterowania mogą być używane do włączania i wyłączania różnych typów adnotacji.

Powtarzaj krok 4, aż kalibracja będzie akceptowalna.

Wskazówka: Jeśli wszystko pójdzie nie tak i mimiki znikną lub zostaną utracone z powodu dziwnej konfiguracji, wybierz jedną z wstępnie skonfigurowanych konfiguracji, aby przywrócić wyświetlanie do normalności.

14.4. Zaawansowane Parametry Kalibracji

Zaawansowane parametry kalibracji umożliwiają panoramowanie i walcowanie płaszczyzny podłoża bez wpływu na parametry kalibracji kamery. Może to być przydatne do wizualizacji ustawień kalibracji, jeśli scena jest przesunięta lub przekręcona względem kamery.

Uwaga: Zaawansowane parametry pan i roll wpływają tylko na orientację płaszczyzny podłoża 3D, dzięki czemu można ją lepiej dopasować do sceny wideo i nie wpływa to w rzeczywistości na parametry kalibracji.

14.5. Następne Kroki

Po skalibrowaniu kanału można skonfigurować Ustawienia Klasyfikacji.

15. Klasyfikacja

VCAcore może dokonać klasyfikacji obiektów po skalibrowaniu kamery. Klasyfikacja obiektów opiera się na właściwościach wyodrębnionych z obiektu, takich jak obszar obiektu i prędkości. VCAcore ma fabrycznie załadowane najbardziej zbliżone klasy obiektów, które w większości przypadków nie trzeba modyfikować. W niektórych sytuacjach może być konieczna zmiana parametrów klasyfikacji lub dodanie nowych klas obiektów.

Każdy z elementów interfejsu użytkownika jest opisany poniżej:

Aby dodać nową grupę klasyfikacji, kliknij przycisk Add Classifier .

15.1. Klasyfikacja Obiektów

Obiekty są klasyfikowane zgodnie z tym, jak ich zmierzone i obliczone właściwości odpowiadają grupom klasyfikacyjnym. Każda grupa klasyfikacyjna określa zakres prędkości i zakres powierzchni. Obiekty, które mieszczą się w obu zakresach prędkości i powierzchni, zostaną sklasyfikowane jako obiekt odpowiedniej klasy.

Uwaga: Jeśli wiele klas zawiera nakładające się zakresy prędkości i obszarów, klasyfikacja obiektu może być niejednoznaczna (ponieważ obiekt będzie pasował do więcej niż jednej klasy). W tym przypadku rzeczywista klasyfikacja nie jest określona więc losowo może przypisać jedną z nakładających się klas.

15.2. Filtr Deep-Learning

VCAcore obsługuje również klasyfikację obiektów dzięki zastosowaniu filtra głębokiego uczenia się, w celu przedstawienia jego funkcjonalności i interakcji z klasyfikacją obiektów na skalibrowanych scenach, zobacz Ustawienia Zaawansowane.

15.3. Następne Kroki

Dowiedz się więcej o Wykrywaniu Sabotażu.

16. Wykrywanie Sabotażu

Moduł wykrywania sabotażu jest przeznaczony do wykrywania zdarzeń sabotażu kamery, takich jak zasłonięcie, rozmazanie i przesuwanie kamery. Osiąga się to poprzez wykrywanie dużych trwałych zmian w obrazie.

16.1. Włączanie Wykrywania Sabotażu

Aby włączyć wykrywanie sabotażu, zaznacz pole Enabled.

16.2. Zaawansowane Ustawienia Wykrywania Sabotażu

W zaawansowanych ustawieniach wykrywania sabotażu możliwa jest zmiana progów dla obszaru obrazu, który musi zostać zmieniony, oraz czasu, przez który musi być zmieniony, przed wyzwoleniem zdarzenia sabotażu.

Jeśli problem stanowią fałszywe alarmy, należy zwiększyć czas trwania i/lub obszar, aby duże zmiany przejściowe, takie jak bliskie obiekty tymczasowo zasłaniające kamerę, nie powodowały fałszywych alarmów.

16.3. Powiadomienia o Sabotażu

Po wykryciu sabotażu generowane jest zdarzenie sabotażu. To zdarzenie jest przesyłane przez dowolne elementy wyjściowe akcji, a także wyświetlane w strumieniu wideo:

16.4. Wykrywanie Sabotażu - Następne Kroki

Dowiedz się więcej o Wykrywaniu Zmian Sceny.

17. Wykrywanie Zmian Sceny

Moduł wykrywania zmiany sceny resetuje algorytm śledzenia, gdy wykryje dużą trwałą zmianę obrazu. Zapobiega to wykrywaniu zmian w obrazie przez silnik śledzenia jako śledzonych obiektów, które mogą być potencjalnymi źródłami fałszywych alarmów.

Rodzaje zmian, które wykrywa moduł wykrywania zmiany sceny, są następujące:

17.1. Ustawienia Zmiany Sceny

Dostępne są 3 opcje trybu wykrywania zmiany sceny:

17.1.1. Automatic

Jest to ustawienie domyślne, które automatycznie użyje zalecanych ustawień. Zaleca się pozostawienie ustawienia automatycznego, chyba że wykrywanie automatyczne zmiany sceny powoduje problemy.

17.1.2. Disabled

Wykrywanie zmiany sceny jest wyłączone.

Należy pamiętać, że gdy wykrywanie zmiany sceny jest wyłączone, duże zmiany w obrazie nie zostaną wykryte. Na przykład, jeśli ciężarówka stoi przed kamerą, zmiana sceny nie zostanie wykryta, w wyniku czego mogą wystąpić fałszywe zdarzenia.

17.1.3. Manual

Umożliwia ręczzną konfigurację parametrów algorytmu wykrywania zmiany sceny.

Jeśli tryb automatyczny jest wyzwalany w sytuacjach, gdy nie jest to pożądane (np. jest zbyt czuły lub niewystarczająco czuły), parametry można dostosować ręcznie, aby dokładnie ustawić zachowaniem w takich przypadkach.

W trybie ręcznym dostępne są następujące ustawienia:

Gdy przekroczone zostaną progi czasu i obszaru, scena zostanie uznana za zmienioną i zostanie zresetowana.

Jeśli wykrycie zmiany sceny jest błędne, czas i/lub obszar powinny zostać zwiększone, tak aby duże zmiany przejściowe, takie jak bliski obiekt tymczasowo zasłaniający kamerę, nie powodowały wykrycia zmiany sceny.

17.2. Powiadomienia o Zmianie Sceny

Po wykryciu zmiany sceny, scena zostaje ponownie wyuczona i wyświetlany jest komunikat w dzienniku zdarzeń oraz adnotacją na wideo

17.3. Następne Kroki

Dowiedz się więcej o Nadrukowywaniu Adnotacji.

18. Nadrukowywanie Adnotacji

Ustawienie Burnt-in Annotation pozwala na wypalenie adnotacji VCAcore na surowym strumieniu wideo. Adnotacje mogą zawierać informacje o śledzonych obiektach, licznikach i komunikaty systemowe.

18.1. Ustawienia Nadrukowywania Adnotacji

Ustawienia wypalania adnotacji kontrolują, które części metadanych VCAcore (obiekty, zdarzenia itp.) Są renderowane w strumieniu wideo.

Uwaga: aby wyświetlić parametry obiektu, takie jak prędkość, wysokość, powierzchnia i klasyfikacja, kanał musi być najpierw skalibrowany.

18.2. Display Event Log

Zaznacz opcję Display Event Log, aby wyświetlić dziennik zdarzeń w dolnej części obrazu.

18.3. Display Zones

Zaznacz opcję Display Zones, aby wyświetlić kontur dowolnych skonfigurowanych stref.

18.4. Display Objects

Zaznacz opcję Display Objects, aby wyświetlić ramki na około śledzonych obiektów. Obiekty, które nie są w stanie alarmu, są wyświetlane na żółto. Obiekty renderowane na czerwono są w stanie alarmowym (tj. Wywołały regułę).

18.4.1. Object Speed

Zaznacz opcję Object Speed, aby wyświetlić szybkość obiektu.

18.4.2. Object Height

Zaznacz opcję Object Height, aby wyświetlić wysokość obiektu.

18.4.3. Object Area

Zaznacz opcję Object Area, aby wyświetlić obszar obiektu.

18.4.4. Object Classification

Zaznacz opcję Object Class, aby wyświetlić Klasyfikację obiektu.

18.5. Display Line counters

Zaznacz opcję Display Line Counters, aby wyświetlić informacje diagnostyczne kalibracji licznika linii. Więcej informacji można znaleźć w Reguły.

18.6. Display Counters

Zaznacz opcję Display Counters, aby wyświetlić nazwy i wartości liczników. Więcej informacji można znaleźć w temacie Liczniki.

18.6.1. System Messages

Komunikaty systemowe (np. „Uczenia się Sceny”) są zawsze renderowane w strumieniu wideo.

18.7. Następne Kroki

Dowiedz się więcej o Ustawieniach Zaawansowanych.

19. Ustawienia Zaawansowane

W większości instalacji wystarczająca jest domyślna konfiguracja VCAcore. Jednak w niektórych przypadkach lepszą wydajność i skuteczność można uzyskać dzięki zmodyfikowanym parametrom. Strona Ustawień Zaawansowanych umożliwia konfigurację zaawansowanych parametrów VCAcore.

19.1. Parametry

19.1.1. Filtr Deep-Learning (DL)

Filtr głębokiego uczenia się jest opcjonalnym modułem, który wykorzystuje głęboko uczący się silnik klasyfikacyjny do filtrowania fałszywych alarmów. Filtr głębokiego uczenia nie wymaga kalibracji źródła wideo ani konfigurowania klasyfikatora obiektów. Gdy filtr jest włączony, wszelkie zdarzenia generowane przez skonfigurowane reguły zostaną przekazane do filtra głębokiego uczenia w celu weryfikacji. Jeśli filtr sklasyfikuje obiekt, który wygenerował zdarzenie jako tło (nie osobę lub pojazd), zdarzenie zostanie odfiltrowane, a wszelkie dołączone akcje nie zostaną uruchomione.

Gdy filtr jest włączony, klasyfikacja (z procentem pewności) zostanie wyświetlona w Dzienniku Zdarzeń gdy włączona opcja w Nadrukowywanie Adnotacji:

Dostęp do danych klasyfikacji z filtru głębokiego uczenia można uzyskać również za pomocą szablonu tokenów.

Podczas korzystania z VCAbridge filtr głębokiego uczenia jest wstępnie załadowany w oprogramowaniu sprzętowym (wersja 1.0.1 lub nowsza) i po włączeniu działa na CPU. Aby skorzystać z filtra głębokiego uczenia się na VCAserver, należy zainstalować dodatkowy składnik filtra głębokiego uczenia się. W VCAserver filtr może opcjonalnie używać akceleracji GPU, co wymaga zainstalowania dodatków dla GPU. Akceleracja GPU wymaga procesora graficznego NVIDIA z CUDA Compute Capability 3.5 lub nowszym, a CUDA 9.0 musi być zainstalowany.

Bez akceleracji GPU włączenie filtru na wielu kanałach, które generują dużą liczbę zdarzeń (więcej niż 1 na sekundę), może spowodować obniżenie wydajności systemu.

Należy pamiętać, że ponieważ filtr głębokiego uczenia się jest nauczony do wykrywania ludzi i pojazdów, jeśli niestandardowe klasy obiektów zostały skonfigurowane w klasyfikatorach obiektów, filtr głębokiego uczenia może błędnie filtrować te zdarzenia. W takich przypadkach nie zaleca się korzystania z filtra głębokiego uczenia się.

19.1.2. Czas Wstrzymania Alarmu

Czas wstrzymania alarmu określa czas pomiędzy kolejnym ponownym uruchomieniem alarmu wygenerowanego przez ten sam obiekt wyzwalający tę samą regułę. Aby wyjaśnić tę koncepcję, rozważ poniższy schemat, na którym nie skonfigurowano czasu wstrzymania alarmu:

W tym scenariuszu wykrywania osoba wchodzi do strefy 3 razy. W każdym punkcie generowany jest alarm, w wyniku którego generowane są łącznie 3 alarmy. Po skonfigurowaniu czasu wstrzymania alarmu można zapobiec ponownemu uruchomieniu tej samej reguły dla tego samego obiektu w skonfigurowanym okresie czasu.

Rozważmy ten sam scenariusz, ale z ustawionym czasem wstrzymania alarmu na 5 sekund:

W takim przypadku alarm nie jest generowany, gdy osoba wchodzi do strefy po raz drugi, ponieważ czas między wystąpieniem ostatniego alarmu tego samego typu dla obiektu jest mniejszy niż czas wstrzymania alarmu. Gdy osoba wchodzi ponownie do strefy po raz trzeci, czas, który upłynął od poprzedniego alarmu tego samego typu dla tego obiektu, jest większy niż czas wstrzymania alarmu i generowany jest nowy alarm. Zasadniczo czas wstrzymania alarmu można skonfigurować, aby zapobiec generowaniu wielu alarmów, ponieważ obiekt krąży po krawędzi strefy.

Domyślne ustawienie czasu wstrzymania alarmu wynosi 5 sekund.

19.1.3. Stationary Object Hold-on Time

Stationary Object Hold-on Time określa czas, przez jaki obiekt będzie śledzony przez silnik, gdy stanie się nieruchomy. Ponieważ obiekty, które stają się nieruchome, muszą zostać „połączone” ze sceną po pewnym ustalonym czasie, silnik śledzący zapomni o obiektach które stały się nieruchome gdy minie ustawiony czas: Stationary Object Hold-on Time

Ustawienie domyślne to 60 sekund.

19.1.4. Minimalny Rozmiar Śledzonego Obiektu

Minimalny rozmiar śledzonego obiektu określa rozmiar najmniejszego obiektu, który będzie brany pod uwagę do śledzenia.

W większości systemów zalecane jest ustawienie domyślne 10. W niektórych sytuacjach, gdy wymagana jest dodatkowa czułość, wartość można określić ręcznie. Chociaż niższe wartości pozwalają silnikowi śledzić mniejsze obiekty, może to zwiększyć podatność na fałszywe alarmy.

19.1.5. Redukcja Drgań Kamery

Włączenie redukcji drgań kamery stabilizuje strumień wideo przed uruchomieniem procesu analizy. Może to być przydatne, gdy kamera jest zainstalowana na słupie lub niestabilnej platformie, przez co obraz się kołysze lub drga.

Zaleca się włączenie tej opcji tylko wtedy, gdy takie zjawiska występują na obrazie kamery, należy pamiętać, że użycie tej funkcji może zmniejszyć czułość analizy i śledzenia.

19.1.6. Punkt Detekcji Śledzonych Obiektów

Dla każdego śledzonego obiektu punkt jest używany do określenia pozycji obiektu i oceny, czy przecina on strefę i uruchamia regułę. Ten punkt nazywany jest punktem detekcji (detection point).

Istnieją 3 tryby, które definiują punkt wykrywania względem obiektu:

19.1.6.1. Automatyczny - Automatic

W trybie automatycznym punkt detekcji jest ustawiany automatycznie na podstawie konfiguracji kanału. Wybiera „Centroid”, jeśli kamera jest skalibrowana z nad głowy, lub „Midbottom”, jeśli kamera jest skalibrowana z boku lub nie skalibrowana.

19.1.6.2. Centralny - Centroid

W tym trybie punkt detekcji wymuszany jest jako centralny obiektu..

19.1.6.3. Środkowy dół - Midbottom

W tym trybie punkt detekcji jest wymuszany jako środek dolnej krawędzi śledzonego obiektu. Zazwyczaj jest to punkt kontaktu z ziemią obiektu (gdzie obiekt przecina płaszczyznę podłoża).

19.1.7. Interwał Zdarzeń Utraty Sygnału

Loss Of Signal Emit Interval określa czas pomiędzy emisjami zdarzenia, gdy kanał traci sygnał ze źródłem wideo.

Ustawienie domyślne to 1 sekunda.

19.2. Ustawienia Zaawansowane - Następne Kroki

Dowiedz się więcej o Ustawieniach Systemu.

20. Ustawienia Systemu

Strona ustawień systemu ułatwia administrowanie ustawieniami sprzętowymi systemu, takimi jak konfiguracja sieci i uwierzytelnianie.

Na platformie VCAbridge dostępne są również dodatkowe ustawienia konfiguracji sieci, czas systemowy i inne ustawienia specyficzne dla platformy.

20.1. Ustawienia Sieciowe

Konfiguracja sieci urządzenia może zostać zmieniona w sekcji konfiguracji ustawień sieciowych:

20.2. Ustawienia Uwierzytelniania

System VCA może być chroniony przed nieautoryzowanym dostępem poprzez umożliwienie uwierzytelnienia. Domyślnie uwierzytelnianie jest włączone i podczas pierwszego dostępu do urządzenia należy wprowadzić poświadczenia domyślne. Uwierzytelnianie dotyczy wszystkich funkcji, w tym interfejsu internetowego i interfejsu API, serwera RTSP i interfejsów wyszukiwania urządzenia.

20.2.1. Włączanie Uwierzytelniania

Kliknij przycisk Enable, aby włączyć uwierzytelnianie.

Hasło musi zostać potwierdzone przed włączeniem uwierzytelniania, aby uniemożliwić nieumyślne zablokowanie użytkownika na urządzeniu.

20.2.2. Zmiana Hasła

Kliknij przycisk Change Password, aby zmienić hasło.

Wprowadź nowe hasło i potwierdź bieżącym hasłem, aby zastosować zmiany.

OSTRZEŻENIE: Jeśli hasło zostanie zapomniane, urządzenie nie będzie dostępne. Jedynym sposobem odzyskania dostępu do urządzenia bez prawidłowego hasła jest wykonanie fizycznego resetu, jak opisano w sekcji Zapomniane Hasło.

20.2.3. Wyłączanie Uwierzytelniania

Kliknij przycisk Disable, aby wyłączyć uwierzytelnianie i zezwolić użytkownikom na dostęp do urządzenia bez wprowadzania hasła. Hasło jest wymagane do wyłączenia uwierzytelniania.

20.2.4. Domyślne Logowanie

Domyślne poświadczenia są następujące:

20.2.5. Zapomniane Hasło

Jeśli system stanie się niedostępny z powodu utraconego hasła, jedynym sposobem odzyskania dostępu do urządzenia jest usunięcie pliku konfiguracyjnego używanego przez VCAcore. Ten proces różni się w zależności od platformy:

20.3. VCAbridge Specific Settings

Następujące ustawienia są dostępne tylko dla platformy VCAbridge.

20.4. Ustawienia Sieciowe (cd.)

20.5. Ustawienia Czasu

Ustawienia czasu systemowego urządzenia VCAbridge można zmienić w sekcji konfiguracji ustawień czasu:

20.6. Ustawienia Wejść Cyfrowych

Jeśli dostępne są wejścia cyfrowe, można je skonfigurować w dwóch różnych trybach:

20.7. Informacje o Systemie

Sekcja informacji o systemie pokazuje czas działania urządzenia (czas pracy urządzenia od ostatniego ponownego uruchamienia):

20.8. Ustawienia Zasilania

Sekcja ustawień zasilania obsługuje funkcje konserwacji urządzenia:

20.9. Aktualizacja Oprogramowania VCAbridge

21. Szablony Tokenów

VCAcore można skonfigurować tak, aby wykonywało określone działanie po wystąpieniu zdarzenia analitycznego. Przykłady obejmują wysyłanie wiadomości e-mail, wiadomości TCP lub HTTP na zdalny serwer.

VCAcore umożliwia tworzenie szablonów wiadomości e-mail, działań TCP i HTTP, które są automatycznie wypełniane metadanymi dla zdarzenia. Umożliwia to określenie szczegółów zdarzenia w wiadomości wysyłanej przez akcję, np. położenie obiektu, typ zdarzenia itp.

21.1. Składnia

System szablonów wykorzystuje mustache, który jest powszechnie używany i dobrze udokumentowany w Internecie.

W tym miejscu zostanie przedstawiony krótki przegląd składni szablonów.

Szablony wiadomości mogą być zapisywane za pomocą tokenów w treści wiadomości. Na przykład:

Witaj {{name}}!

jest to szablon z tokenem name. Gdy szablon jest przetwarzany, metadane zdarzenia są sprawdzane czy zawierają wpis "name". Jeśli tak się stanie, token {{name}} zostanie zastąpiony nazwą zdarzenia. Jeśli go nie ma, token zostanie zastąpiony pustym miejscem.

Jeśli wystąpi zdarzenie o nazwie Presence, przetworzonym szablonem będzie Hello Presence!, jeśli nie ma nazwy, będzie toHello!

Niektóre tokeny mogą również mieć pod-właściwości, do których można uzyskać dostęp w następujący sposób:

It happened at {{start.hours}}!

21.1.1. Warunki

Tokeny można również sprawdzać jako wartości logiczne, co pozwala na zapisywanie prostych instrukcji warunkowych:

{{#some_property}}Hello, world!{{/some_property}}

W tym przykładzie, jeśli some_property jest obecne w metadanych zdarzenia, to "Hello, world!" pojawi się w wiadomości. W przeciwnym razie nic nie zostanie dodane do wiadomości.

Jeśli some_property jest wartością boolowską, to jej wartość określi, czy warunek zostanie wprowadzony. Jeśli some_property jest właściwością tablicy, będzie ona traktowana jako prawdziwa, jeśli tablica nie jest pusta.

21.1.2. Arrays

Ostatecznie, tokeny mogą być również tablicami, które mogą być iterowane. Na przykład:

{{#object_array}}
{{name}} is here!
{{/object_array}}

Ten szablon przejdzie przez każdy element w object_array i wypisze jego nazwę, jeśli ma właściwość name. Na przykład tablica [{"name": "Bob"}, {"name": "Alice"}, {"name": "Charlie"}] spowoduje wygenerowanie rezultat:

Bob is here!
Alice is here!
Charlie is here!

21.2. Lista Tokenów

Nazwy małymi literami reprezentują tokeny, które mogą być używane ze składnią {{token}}. Nazwy z wielkich liter reprezentują właściwości logiczne lub tablicowe (Arrays), które powinny być używane ze składnią {{#token}} ... {{/ token}}.

21.2.1. {{name}}

Nazwa zdarzenia.

21.2.2. {{id}}

Unikalny identyfikator zdarzenia.

21.2.3. {{type.string}}

Typ zdarzenia. Zazwyczaj jest to typ reguły, która spowodowała zdarzenie.

21.2.4. {{type.name}}

Jest to właściwość logiczna, która pozwala na wykonanie warunków na podanym typie nazwa.

Na przykład, aby wyświetlić coś tylko dla zdarzeń typu „obecność”:

{{#type.presence}}My text{{/type.presence}}

21.2.5. {{start}}

Czas wystąpienia zdarzenia. Ma następujące właściwości podrzędne:

The iso8601 property is a date string in the ISO 8601 format.

The offset property is the timezone offset.

21.2.6. {{end}}

The end time of the event. Same properties as start

21.2.7. {{host}}

The hostname of the device that generated the event

21.2.8. {{#Channel}}{{id}}{{/Channel}}

The id of the channel that the event occured on

21.2.9. {{#Zone}}

An array of the zones associated with the event.

Właściwości podrzędne:

Przykład:

{{#Zone}}
id: {{id}}
name: {{name}}
channel:{{channel}}
colour: ({{colour.r}}, {{colour.g}}, {{colour.b}}, {{colour.a}})
{{/Zone}}

21.2.10. {{#Rule}}

An array of the rules associated with the event.

Właściwości podrzędne:

Przykład:

{{#Rule}}
id: {{id}}
name: {{name}}
type:{{type}}
{{/Rule}}

21.2.11. {{#Object}}

An array of the objects that triggered the event.

Właściwości podrzędne:

Przykład:

{{#Object}}
id: {{id}}
Top left corner: ({{outline.rect.top_left.x}}, {{outline.rect.top_left.y}})
{{/Object}}

21.2.12. {{outline}}

The bounding box outline of an object or zone

Właściwości podrzędne:

21.2.13. {{#CountingLine}}

An array of line counter counts.

Właściwości podrzędne:

Przykład:

{{#CountingLine}}
rule_id: {{rule_id}}
calibration width: {{width}}
position: {{position}}
count: {{count}}
direction: {{direction}}
{{/CountingLine}}

21.2.14. {{#Counter}}

An array of counter counts.

Właściwości podrzędne:

Przykład:

{{#Counter}}
id: {{id}}
name: {{name}}
count: {{value}}
{{/Counter}}

21.2.15. {{#Tamper}}

A boolean that is true if a camera tamper has been detected

Przykład:

{{#Tamper}}The camera has been tampered with!{{/Tamper}}

21.2.16. {{#Area}}

The estimated area of the object. This token is a property of the object token. It is only produced if calibration is enabled.

Właściwości podrzędne:

Przykład:

{{#Object}}{{#Area}}{{value}}{{/Area}}{{/Object}}

21.2.17. {{#Height}}

The estimated height of the object. This token is a property of the object token. It is only produced if calibration is enabled.

Właściwości podrzędne:

Przykład:

{{#Object}}{{#Height}}{{value}}{{/Height}}{{/Object}}

21.2.18. {{#GroundPoint}}

The estimated position of the object. This token is a property of the object token. It is only produced if calibration is enabled.

Właściwości podrzędne:

Przykład:

{{#Object}}{{#GroundPoint}}Position: ({{value.x}}, {{value.y}}){{/GroundPoint}}{{/Object}}

21.2.19. {{#Speed}}

The estimated speed of the object. This token is a property of the object token. It is only produced if calibration is enabled.

Właściwości podrzędne:

Przykład:

{{#Object}}{{#Speed}}{{value}}{{/Speed}}{{/Object}}

21.2.20. {{#Classification}}

The classification of the object. This token is a property of the object token. It is only produced if calibration is enabled.

Właściwości podrzędne:

Przykład:

{{#Object}}{{#Classification}}{{value}}{{/Classification}}{{/Object}}

21.2.21. {{#DLClassification}}

The classification generated by the [Deep-Learning Filter]. The filter must be enabled in order to produce this token, but calibration is not required.

Właściwości podrzędne:

Przykład:

{{#DLClassification}}
Class: {{class}}
Confidence: {{confidence}}
{{/DLClassification}}

21.3. Przykłady Użycia

Poniżej znajduje się przykład szablonu wykorzystującego większość dostępnych tokenów:

Event #{{id}}: {{name}}
Event type: {{type}}
Start time (ISO 8601 format): {{start.iso8601}}
End time:
day: {{end.day}}
time: {{end.hour}}:{{end.minutes}}:{{end.seconds}}.{{end.microseconds}}
Device: {{host}}
Channel: {{#Channel}}{{id}}{{/Channel}}
{{#type.presence}}
{{#Object}}
Object ID: {{id}}
{{#Classification}}Object Classification: {{value}}{{/Classification}}
{{#Height}}Object Height: {{value}}m{{/Height}}
Object bounding box: [
  ({{outline.rect.top_left.x}}, {{outline.rect.top_left.y}}),
  ({{outline.rect.bottom_right.x}}, {{outline.rect.top_left.y}}),
  ({{outline.rect.bottom_right.x}}, {{outline.rect.bottom_right.y}}),
  ({{outline.rect.top_left.x}}, {{outline.rect.bottom_right.y}})
]
{{/Object}}
{{/type.presence}}

{{#Counter}}
Counter triggered.
id: {{id}}
name: {{name}}
count: {{count}}
{{/Counter}}

{{#LineCounter}}
rule_id: {{rule_id}}
calibration width: {{width}}
position: {{position}}
count: {{count}}
direction: {{direction}}
{{/LineCounter}}

W tym przykładzie informacje o obiekcie są drukowane tylko dla zdarzeń typu „obecność”.

Ten szablon spowoduje wyświetlenie następującego komunikatu:

Event #350: My Bad Event
Event type: presence
Start time (ISO 8601 format): 2017-04-21T10:09:42+00:00
End time:
day: 21
time: 10:09:42.123456
Device: mysecretdevice
Channel: 0

Object ID: 1
Object Classification: Person
Object Height: 1.8m
Object bounding box: [
  (16000, 30000),
  (32000, 30000),
  (32000, 0),
  (16000, 0)
]

Counter triggered.
id: 10
name: My Counter
count: 1

rule_id: 350
calibration width: 1
position: 1
count: 1
direction: 0

22. Serwer RTSP

VCAcore obsługuje serwer RTSP, który strumieniuje wideo z adnotacjami w formacie RTSP.

Adres URL RTSP dla kanałów w urządzeniu VCA jest następujący:

rtsp://\<device ip\>:554/channels/\<channel id\>

23. Modele VCA Bridge oraz Firmware

Wybierz odpowiedni model urządzenia do Twoich potrzeb.

23.1. Dostępne modele urządzeń VCA Bridge

Model Maksymalne obsługiwane strumienie Kodek
VBP3510 4x HD @ 15 kl/s LUB 8x D1 @ 15 kl/s LUB 16x VGA @ 15 kl/s H.264
VBP3500 4x HD @ 15 kl/s LUB 8x D1 @ 15 kl/s LUB 16x VGA @ 15 kl/s H.264
VBP2000 1x HD @ 15 kl/s LUB 2x D1 @ 15 kl/s LUB 4x VGA @ 15 kl/s H.264

23.2. Aktualizacja Firmware VCAcore

Okresowo pojawiają się nowe wersje VCAcore z nowymi funkcjami, sprawdzaj aktualizacje oprogramowania na stronie CBC Poland, poniżej dostępna również lista oprogramowania do Mostków VCAbridge w najnowszej wersji.

Wersja Obsługiwane Modele DLC IMG ARM ARM STATUS LOG Safestar Pobieranie
0.4.10 VBP2000, VBP3500 NIE NIE NIE NIE NIE NIE Link HTTP
1.1.3 VBP2000 NIE TAK TAK TAK NIE TAK Link HTTP
1.0.3-1 VBP3510, VBP3500 TAK TAK TAK NIE NIE TAK Link HTTP
1.1.0-8 VBP3510, VBP3500 TAK TAK TAK TAK NIE TAK Link HTTP
1.2.0 VBP3510 TAK NIE TAK TAK TAK TAK Link HTTP

Podczas aktualizacji VCAserver po prostu uruchom pakiety instalacyjne jak powyżej. Spowoduje to zastąpienie istniejącej wersji.

W przypadku VCAbridge zaktualizuj oprogramowanie sprzętowe na stronie Ustawień Systemu.

Podczas aktualizacji oprogramowania na dowolnej platformie istniejący plik konfiguracyjny zostanie zapisany i użyty w nowej wersji. Dotyczy to wersji VCAserver (v1.0.1 lub nowszej) i VCAbridge (v0.4.10 lub nowszej).

23.2.1. Aktualizacja VCAbridge z 0.3.xx do 1.0.xx

Podczas uaktualniania oprogramowania układowego urządzenia VCAbridge z wersją 0.3.xx wymagana jest tymczasowa aktualizacja do wersji 0.4.xx w celu zachowania pliku konfiguracyjnego. W związku z tym należy wykonać następujące kroki:

Ważna Uwaga: Poniższa sekcja eksportowania musi zostać zakończona przed przystąpieniem do aktualizacji systemu, w przeciwnym razie cała konfiguracja zostanie utracona.

23.2.1.1. Eksportowanie starej konfiguracji

Aby wyeksportować konfigurację, należy pobrać narzędzie ExportConfigurationTool tutaj: Link HTTP

Nazwa aplikacji to ExportConfigurationTool, jak pokazano na tym obrazku:

23.2.1.2. Uruchom ExportConfigurationTool

Uruchom ExportConfigurationTool i wprowadź wymagane informacje:

Po pomyślnym zakończeniu procesu zostaną wygenerowane dwa pliki JSON w tym samym folderze co aplikacja:

23.2.1.3. Importowanie konfiguracji

Gdy ExportConfigurationTool wygeneruje zaktualizowaną wersję konfiguracji w pliku JSON, aktualizację oprogramowania w wersji 0.4.10 można zainstalować na mostku VCA.

23.2.1.4. Po zainstalowaniu nowego pakietu

Aby rozpocząć proces importowania, przejdź do strony Settings w mostku VCAbridge. Następnie znajdź sekcję Configuration i użyj przycisku Import Configuration, aby rozpocząć proces importowania.

Mostek VCA wyświetli następujące okno:

Kliknij przycisk Browse i wybierz plik konfiguracyjny JSON z dopiskiem updated wygenerowany przez ExportConfigurationTool.

Następnie rozpocznie się proces importowania. Nie zamykaj okna ani nie odświeżaj strony, gdy wyświetlany jest następujący komunikat:

Po zakończeniu tego procesu wersję 1.0.x można bezpiecznie zainstalować na mostku VCAbridge.

24. Metadane API

24.1. Endpoint

Punkt końcowy api metadanych dla kanału to:

http://SERVER_IP/metadata/CHANNEL_ID

24.2. Przykład Kodu

Poniżej znajduje się przykładowy kod w Pythonie pokazujący, w jaki sposób można wykorzystać metadane:

 #!/usr/bin/python
 # The user must install the sseclient and requests packages using pip

from sseclient import SSEClient
import json
import requests

def do_something_useful(message):
  metadata = json.loads(message.data)
  print('Received metadata event')
  print json.dumps(metadata, indent=4, sort_keys=True)

if __name__ == '__main__':
  SERVER_IP = '192.168.5.3'
  CHANNEL_ID = 1
  messages = SSEClient('http://' + SERVER_IP + '/metadata/' + str(CHANNEL_ID),
    auth=requests.auth.HTTPDigestAuth('admin', 'admin'))
  for msg in messages:
      do_something_useful(msg)

24.3. Format Metadanych

Każda wiadomość metadanych jest obiektem JSON, a znacznik czasu w ISO8601 tej konkretnej ramki jest jej jedyną właściwością. Wartość powiązana z tą właściwością jest tablicą obiektów.

{
    "2018-10-02T16:51:55.782845060+01:00": [
      {
        "typename": "vca.meta.data.count.Value",
        "id": 5,
        "name": "my counter",
        "value": 0
      },
      {
        "typename": "vca.meta.data.count.Value",
        "id": 5,
        "name": "my counter 2",
        "value": 3
      }
    ]
}

Każdy obiekt ma właściwość ciągu typename umożliwiającą jego identyfikację. Poniżej znajduje się lista typów obiektów, które można znaleźć w api metadanych.

Uwaga: W przypadku obecności danych współrzędnych jest ona zawsze reprezentowana jako 16-bitowa liczba całkowita, przy czym 0-65535 reprezentuje zakres od 0-1 w ramce.

24.3.1. Wartości Liczników

Reprezentacja obiektu zdarzenia licznika linii. Ten obiekt reprezentuje zmianę wartości licznika.

Przykład:

{
  "typename": "vca.meta.data.count.Value",
  "id": 5,
  "name": "my counter",
  "value": 0
}
Property Type Description Possible values
id Number The id of the counter this count value is associated with An unsigned integer
name String The name of the counter this count value is associated with Any string, can be empty
value Number The value of the counter A signed integer

24.3.2. Linia Zliczająca

Reprezentacja obiektu zdarzenia linii zliczającej. Ten obiekt zawiera dane dotyczące obiektu, który przekroczył linię.

Przykład:

{
  "typename": "vca.meta.data.count.Line",
  "rule_id": 4,
  "width": 20,
  "position": 3,
  "count": 2,
  "direction": false
}
Property Type Description Possible values
rule_id Number The rule id of this counting line associated with this event An unsigned integer
width Number The width of the object which crossed the line An unsigned, 16-bit integer
position Number The position of object on the line An unsigned, 16-bit integer
count Number The number of objects crossing the line in this event An unsigned integer
direction Boolean The direction in which the object has crossed the line, with Left = false and Right = true true/false

24.3.3. Uczenie się Sceny

Obiekt wskazujący, że trwa proces uczenia się sceny.

Przykład:

{
  "typename": "vca.meta.data.Learning"
}

24.3.4. Sabotaż

Obiekt wskazujący, że wykryto zdarzenie sabotażu.

Przykład:

{
  "typename": "vca.meta.data.Tampered"
}

24.3.5. Ground point

The ground point of a tracked object.

Przykład:

{
    "typename": "vca.meta.data.object.GroundPoint",
    "value": {
        "x": 45686,
        "y": 25667
    }
}
Property Type Description Possible values
value Object An object with x/y coordinates of the ground point For both x and y, valid values are any unsigned 16-bit integer

24.3.6. Tracked Objects

An object representing a tracked object.

{
    "key": "1970-01-01T01:00:00.000000000+01:00",
    "value": {
        "id": 56,
        "meta": [
            {
                "typename": "vca.meta.data.object.GroundPoint",
                "value": {
                    "x": 45686,
                    "y": 25667
                }
            }
        ],
        "outline": [
            {
                "x": 43323,
                "y": 20753
            },
            {
                "x": 48049,
                "y": 20753
            },
            {
                "x": 43323,
                "y": 25667
            },
            {
                "x": 48049,
                "y": 25667
            }
        ],
        "typename": "vca.meta.data.Object"
    }
}
Property Type Description Possible values
key Strng An ISO8601 timestamp of the frame in which the object was tracked An ISO8601 timestamp
value object An object containing additional data See below for properties
id Number The id of this tracked object An unsigned integer
meta array An array of additional metadata objects An array of valid metadata objects
outline Array An array of objects with x/y coordinates defining the bounding box for the object For both x and y, valid values are any unsigned 16-bit integer

24.3.7. Object History

An object containing the tracking history of a tracked object.

Przykład:

{
    "map": [
        {
            "key": "1970-01-01T01:00:00.000000000+01:00",
            "value": {
                "id": 56,
                "meta": [
                    {
                        "typename": "vca.meta.data.object.GroundPoint",
                        "value": {
                            "x": 45686,
                            "y": 25667
                        }
                    }
                ],
                "outline": [
                    {
                        "x": 43323,
                        "y": 20753
                    },
                    {
                        "x": 48049,
                        "y": 20753
                    },
                    {
                        "x": 43323,
                        "y": 25667
                    },
                    {
                        "x": 48049,
                        "y": 25667
                    }
                ],
                "typename": "vca.meta.data.Object"
            }
        },
        {
            "key": "2018-10-02T16:51:53.788959498+01:00",
            "value": {
                "id": 56,
                "meta": [
                    {
                        "typename": "vca.meta.data.object.GroundPoint",
                        "value": {
                            "x": 45686,
                            "y": 25667
                        }
                    }
                ],
                "outline": [
                    {
                        "x": 43323,
                        "y": 20753
                    },
                    {
                        "x": 48049,
                        "y": 20753
                    },
                    {
                        "x": 43323,
                        "y": 25667
                    },
                    {
                        "x": 48049,
                        "y": 25667
                    }
                ],
                "typename": "vca.meta.data.Object"
            }
        }
    ],
    "typename": "vca.meta.data.object.History"
}
Property Type Description Possible values
map Array An array of tracked objects An array of valid tracked objects

24.3.8. Event

An object representing a metadata event

{
    "category": "analytics",
    "end": "2018-10-03T10:49:11.389000000+01:00",
    "id": 1,
    "name": "Zone 8 - Presence",
    "objects": [
        {
            "id": 105,
            "meta": [
                {
                    "typename": "vca.meta.data.object.GroundPoint",
                    "value": {
                        "x": 44229,
                        "y": 24298
                    }
                }
            ],
            "outline": [
                {
                    "x": 43865,
                    "y": 21030
                },
                {
                    "x": 44593,
                    "y": 21030
                },
                {
                    "x": 43865,
                    "y": 24298
                },
                {
                    "x": 44593,
                    "y": 24298
                }
            ],
            "typename": "vca.meta.data.Object"
        }
    ],
    "start": "2018-10-03T10:49:11.389000000+01:00",
    "type": "presence",
    "typename": "vca.meta.data.Event"
}
Property Type Description Possible values
id Number The id of this event An unsigned integer
name String The name of the rule that triggered this event Any string (can be empty)
type String The type of this event A valid event type. See below for a list of types
category String The category of this event A valid event category. See below for a list of categories
start String The start timestamp of this event A valid ISO8601 timestamp
end String The end timestamp of this event A valid ISO8601 timestamp
objects Array The tracked objects associated with this event A valid array of tracked objects

Below is a list of possible event categories:

Event category string Description
analytics An event generated by the VCA5 Analytics engine
loss-of-signal An event indicating the loss of video signal from a camera

Below is a list of possible event types:

Event type string Description
presence A presence event
enter An enter event
exit An exit event
appear An appear event
disappear A disappear event
stopped A stopped event
dwell A dwell event
direction A 'direction' event
speed A speed event
tailgating A tailgating event
linecountera A line counter crossing event (left direction)
linecounterb A line counter crossing event (right direction)