Opis bloczków

Sesja

Jest to podstawowy bloczek definiujący sesję. Jest to rodzaj pętli, która w każdej iteracji pobiera klatkę ze strumienia, stosuje do niej silnik wnioskowania i zwraca otrzymane predykcje.

WEJŚCIE:

Wnioskowanie - silnik wnioskowania z określonego bloczku modelu detekcji lub klasyfikacji.

WYJŚCIE:

Predykcje - rozpoznania zawierające kategorie obiektów, ich współrzędne, liczbę i informacje o klatce, w której wystąpiły.

Model

Model wytrenowany w ONESTEP AI i gotowy do przeprowadzenia na nim wnioskowania. Istnieją dwa rodzaje modeli: detekcja i klasyfikacja.

WYJŚCIE:

Wnioskowanie - silnik wnioskowania danego modelu.

Wyzwalacz predykcji

Blok odpowiedzialny za filtrowanie predykcji otrzymanych z sesji, przetwarzanie ich i ewentualnie tworzenie zdarzenia predykcji, jeśli spełnione są warunki określone przez parametry.

Istnieje siedem wyzwalaczy predykcji:

  • Relacja - obiekt klasy X został znaleziony powyżej/poniżej/obok obiektu klasy Y.

  • Ilość - było dokładnie/więcej niż/mniej niż X przedstawicieli klasy Y.

  • Rozmiar - obiekt klasy X ma rozmiar (wysokość x szerokość) dokładnie/więcej/mniej niż YxZ.

  • Lokalizacja - obiekt klasy X znajdował się wewnątrz / na zewnątrz obszaru zainteresowania.

  • Prędkość - obiekt klasy X pokrył Y% obszaru w czasie krótszym/dłuższym niż Z.

  • Transformacja - transformacja reprezentacji klasowej obiektu z X do Y (na przykład mamy klasy STOJĄCY-CZŁOWIEK i LEŻĄCY-CZŁOWIEK, a obiekt zmienia się z jednego stanu w drugi).

  • Przekroczenie linii - obiekt klasy X przekroczył predefiniowaną linię w jednym z dwóch kierunków.

WEJŚCIE:

Predykcje - lista rozpoznań pochodzących z Sesji.

WYJŚCIE:

Zdarzenie przewidywane - zdarzenie składające się ze skorelowanych predykcji, znacznika czasu i ewentualnie innych metadanych, które mogą być istotne dla przetwarzania końcowego algorytmu.

Agregator

Bloczek, który grupuje (agreguje) zdarzenia pochodzące z wyzwalaczy predykcji.

WEJŚCIE:

Zdarzenie przewidywane - konkretne zdarzenie związane z predykcjami pochodzącymi z sesji.

WYJŚCIE:

Agreguj - agregat łączący wszystkie zdarzenia wejściowe.

Wyzwalacze agregacji

Wyzwalacz działający na zagregowanych zdarzeniach. Analizuje on związek między zdarzeniami predykcji z uwzględnieniem czasu. Istnieją cztery wyzwalacze agregacji:

  • Ilość zdarzeń - wystąpiło dokładnie/więcej niż/mniej niż X zdarzeń predykcyjnych typu Y.

  • Sekwencja zdarzeń - zdarzenie, które występuje, gdy wcześniej wystąpiła określona sekwencja zdefiniowanych tutaj zdarzeń predykcji.

  • Czas między zdarzeniami - między predykcjami zdarzenia typu X wystąpiły dokładnie/więcej/mniej niż czas Y.

  • Przedział czasu - zdarzenie, które występuje bezwarunkowo raz na określony czas (nie dotyczy zdarzeń predykcji).

WEJŚCIE:

Agreguj - zgrupowane (zagregowane) zdarzenia.

WYJŚCIE:

Zdarzenie agregacji - nowe zdarzenie składające się ze skorelowanych zdarzeń predykcji i predykcji.

Działania

Jest to bloczek, który definiuje reakcję algorytmu po wystąpieniu zdarzenia predykcji lub agregacji. W zależności od tego, które zdarzenie jest z nim powiązane, odpowiednie zmienne wynikające z metadanych tego zdarzenia będą dostępne w zmiennych zdarzenia.

Istnieją cztery akcje:

  • Wyślij HTTP - wysłanie żądania HTTP typu GET/POST z możliwymi dodatkowymi parametrami.

  • Wyślij e-mail - wysyła wiadomość e-mail o określonej treści na podany adres.

  • Wyślij sms - wysyłanie wiadomości sms o określonej treści na podany numer.

  • Zrób zrzut ekranu - zapisz zrzut ekranu ze strumienia po wystąpieniu zdarzenia.

WEJŚCIE:

Zdarzenie predykcji - zdarzenie predykcji pochodzące z wyzwalacza predykcji.

Zdarzenie agregacji - zdarzenie agregacji pochodzące z wyzwalacza agregacji.

Relacje między bloczkami

  • Podstawowym i niezbędnym bloczkiem do stworzenia algorytmu jest Sesja. Do każdej Sesji musimy podłączyć dokładnie jeden Model.
  • Jeśli do Sesji podłączony jest Wyzwalacz Predykcji, algorytm pozostaje wersją roboczą, dopóki nie podłączymy do niego bloczku Akcji lub Agregatora wraz z Wyzwalaczem agregacji i Akcją.
  • Do jednej Sesji można podłączyć wiele Wyzwalaczy Predykcji, ale każdy Wyzwalacz Predykcji jest podłączony tylko do jednej Sesji.
  • Do jednego Agregatora można podłączyć wiele Wyzwalaczy Predykcji i odwrotnie.
  • Wiele Wyzwalaczy Agregacji może być połączonych z jednym Agregatorem, ale każdy Wyzwalacz Agregacji jest połączony tylko z jednym Agregatorem.
  • Wyzwalacz Predykcji i Wyzwalacz Agregacji mogą być połączone z wieloma Akcjami, ale każda Akcja ma dokładnie jeden Wyzwalacz.