Go to documentation repository
Documentation for Axxon One 1.0.
Previous page Next page
Dodatkowe warunki mogą być dodane do wszystkich typów zapytań. Warunki są zawsze łączone z zapytaniem poprzez logiczne “AND”. Przykładowo zapytanie “obiekt o wysokości nie większej niż jedna czwarta ramki, który przebywa w polu widzenia kamery przez 5 sekund” wyglądałoby następująco:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "objectProperties": { "size": { "height": [0, 0.25] } }, "conditions": { "duration": 5 } }
Typ obiektu (objectProperties/category
)
Obiekt może być porzucony lub poruszający się (twarz, człowiek, grupa, pojazd). W zapytaniu typ porzucony nie może zostać umieszczony wraz z innymi typami obiektów (w innym przypadku warunek o porzuconym typie obiektu zostanie zignorowane).
Wyszukiwanie porzuconych obiektów w dowolnym punkcie ramki wygląda następująco:
{ "queryType": "zone", "figures": [ { "shape": [ [0, 0], [1, 0], [1, 1], [0, 1] ] } ], "objectProperties": { "category": ["abandoned"], } }
Wyszukiwanie osoby lub małej grupy osób przekraczających linię może mieć następującą konstrukcję:
{ "queryType": "line", "figures": [ { "shape": [ [0.5, 0.8], [0.5, 0.2] ] } ] "objectProperties": { "category": ["human", "group"], } }
Wielkość obiektu (objectProperties/size
)
Ustala minimalną oraz maksymalną wysokość oraz szerokość obiektu.
Uwaga!
Minimalne wartości muszą być mniejsze niż 1; maksymalne wartości muszą być większe od 0.
Przykładowo, aby wyszukać obiekty nie większe niż jedna czwarta wysokości ramki, można skorzystać z następującego zapytania:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "objectProperties": { "size": { "width": [0, 1], "height": [0, 0.25] } } }
Określenie wielkości w obu osiach nie jest wymagane; zapytanie może wyglądać także następująco:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "objectProperties": { "size": { "height": [0, 0.25] } } }
Kolor obiektu (objectProperties/color
)
Pozwala na ustalenie minimalnych oraz maksymalnych koordynat koloru obiektu w przestrzeni HSV. Odcień jest wyznaczany w stopniach (od 0 do 360), saturacja oraz jasność – w ułamkach od 0 do 1.
Zapytanie o jasnozielone obiekty w strefie może mieć następującą strukturę:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "objectProperties": { "color": { "hue": [75, 135], "saturation": [0.5, 1], "brightness": [0.5, 1] } } }
W przestrzeni HSV kolory ciemnie lub niemal czarne mogą posiadać dowolny odcień oraz saturację. Aby wyszukać czarne obiekty, zapytanie powinno wyglądać następująco:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "objectProperties": { "color": { "hue": [0, 360], "saturation": [0, 1], "brightness": [0, 0.2] } } }
To samo zapytanie dla białych obiektów:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "objectProperties": { "color": { "hue": [0, 360], "saturation": [0, 0.1], "brightness": [0.8, 1] } } }
Prędkość (conditions/velocity
)
Określa minimalną oraz maksymalną prędkość obiektu.
Jest ona mierzona w fragmencie ramki na sekundę – prędkość poruszającego się obiektu, który przeszedł z lewego krańca ramki do prawego krańca ramki w czasie 1 sekundy to 1.
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "conditions": { "velocity": [0.25, 1] } }
Kierunki (conditions/directions
)
Określa kierunek obiektu jako tabelę kątów. Kąty są mierzone w radianach; są one zliczane z osi zwróconej na prawo zgodnie z ruchem wskazówek zegara.
Zapytanie, by zwrócić obiekty poruszające się w prawo ±45° ma następującą strukturę:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "conditions": { "directions": [ [315, 45] ] } }
Kąt 45° - 315° określa wszystkie kierunki oprócz kierunku "w prawo".
Jeśli niezbędne jest wyszukanie obiektu poruszającego się głównie w osi pionowej, dwa kąty muszą zostać określone;
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "conditions": { "directions": [ [315, 45], [135, 225] ] } }
Czas trwania (conditions/duration
)
Ustala czas (w sekundach), przez który obiekt musi spełniać wszystkie warunki w zapytaniu.
Korzystając z tego warunku, można utworzyć zapytanie typu “długie przebywanie w strefie”:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "conditions": { "duration": 5 } }
Liczba obiektów (condtions/count
)
Określa minimalną ilość wymaganych obiektów, które muszą jednocześnie spełnić inne podane warunki.
Jest to zwykle wykorzystywane w celu wyszukiwania dużej liczby obiektów w strefie. Przykład:
{ "queryType": "zone", "figures": [ { "shape": [ [0.3, 0.3], [0.7, 0.3], [0.7, 0.7], [0.3, 0.7] ] } ], "conditions": { "count": 3 } }