Jak śledzenie obiektów ogranicza powtarzane wnioskowanie w domowym rejestratorze NVR?

Eva Wong jest Technicznym pisarzem i stałym majsterkowiczem w ZimaSpace. Całe życie geek z pasją do homelabów i oprogramowania open-source, specjalizuje się w tłumaczeniu skomplikowanych koncepcji technicznych na przystępne, praktyczne przewodniki. Eva wierzy, że samodzielne hostowanie powinno być zabawą, a nie czymś onieśmielającym. Poprzez swoje samouczki umożliwia społeczności rozwiewanie tajemnic konfiguracji sprzętu, od budowy pierwszego NAS po opanowanie kontenerów Docker.

Śledzenie obiektów ogranicza powtarzane wnioskowanie NVR, zachowując tożsamość celu między klatkami. Dzięki temu późniejsze obserwacje mogą ponownie wykorzystywać istniejący stan, zamiast traktować ten sam cel jako nowy.

Domowy NVR nadal potrzebuje detekcji obiektów, aby wykryć osobę, pojazd lub zwierzę, ale nie musi uruchamiać każdej kolejnej decyzji od zera dla każdej klatki wideo. Gdy tracker powiąże detekcje z trwałym celem, potok może przenosić dalej pozycję, tożsamość, wiek i zapisane atrybuty, wykonywać kosztowne detekcje rzadziej oraz ponownie uruchamiać modele pomocnicze tylko wtedy, gdy cel znacząco się zmieni. Oszczędność wynika więc z ponownego wykorzystania stanu, a nie z tego, że śledzenie magicznie zastępuje wnioskowanie wizyjne.

Detekcja staje się tańsza w ponownym użyciu, gdy ma trwały identyfikator śledzenia

Detekcja obiektów zwraca ramkę i klasę dla jednej analizowanej klatki, natomiast śledzenie zapewnia ciągłość, określając, czy nowa obserwacja należy do wcześniej rozpoznanego celu. Takie powiązanie zamienia strumień wizualnie podobnych ramek w obiekt ze stanem, którego pozycję i tożsamość można aktualizować w czasie, zamiast odtwarzać niezależnie w każdej klatce.

Tracker wieloobiektowy może utrzymywać trwałe identyfikatory śledzenia, zapewniając kolejnym etapom potoku stabilny klucz dla tej samej osoby lub pojazdu. Użytecznym wynikiem nie jest jedynie kolejny prostokąt, lecz rekord celu, który przetrwa kolejne obserwacje i może przechowywać historię.

To pierwsza korzyść obliczeniowa, ponieważ kolejne reguły nie muszą już sprawdzać, czy każda ramka oznacza całkowicie nowy obiekt. Czas przebywania w strefie, kierunek ruchu, usuwanie duplikatów zdarzeń i modele atrybutów działające w dalszej części potoku mogą odwoływać się do jednego rekordu śledzenia, dopóki cel nie opuści sceny, nie zostanie utracony lub nie zostanie przypisany ponownie.

Stabilne identyfikatory śledzenia pozwalają ponownie wykorzystywać wcześniejszą klasyfikację modeli pomocniczych

Największym powtarzanym kosztem często nie jest sam tracker, lecz model pomocniczy, który w przeciwnym razie klasyfikowałby ten sam, już wykryty obiekt w każdej klatce. Jeśli identyfikator śledzenia pozostaje stabilny, potok może przypisać wcześniejszy wynik atrybutu do tego celu i odświeżyć go dopiero wtedy, gdy wygląd lub rozmiar obiektu zmieni się na tyle, aby uzasadniać kolejne wnioskowanie.

DeepStream realizuje ten wzorzec, zapisując w pamięci klasyfikację pomocniczą według identyfikatora obiektu i ponownie wykonując wnioskowanie, gdy obiekt pojawi się po raz pierwszy lub gdy znacznie zwiększy się powierzchnia jego ramki ograniczającej. Domowy NVR może zastosować tę samą architekturę do atrybutów takich jak typ pojazdu, kategoria odzieży, obecność paczki lub inne kosztowne klasyfikatory działające na pojedynczych obiektach.

Pamięć podręczna pozostaje aktualna tylko wtedy, gdy tożsamość celu jest nadal wiarygodna, a ponownie wykorzystywany atrybut powinien pozostać stabilny. Klasyfikator koloru może tolerować wiele klatek bez ponownego uruchamiania, natomiast poza, orientacja twarzy lub stan przenoszonego obiektu mogą zmieniać się na tyle szybko, że nadal konieczne będzie okresowe albo wyzwalane zdarzeniami odświeżanie.

Ponowne wykorzystywanie atrybutów jest najskuteczniejsze, gdy zapisana właściwość zmienia się wolniej niż pozycja obiektu. Dlatego potok śledzenia może przez wiele klatek ponownie używać etykiety typu pojazdu, jednocześnie aktualizując ramkę w każdej klatce. Rozdziela w ten sposób szybko zmieniający się stan geometryczny od wolniej zmieniającego się stanu semantycznego, zamiast odświeżać wszystkie wyniki w tym samym tempie.

Śledzenie może łączyć klatki, w których pominięto detekcję główną

Po ustanowieniu celu niektóre trackery mogą propagować jego położenie przez klatki, w których główny detektor nie działa, a następnie uzgadniać przewidywany stan po pojawieniu się kolejnej detekcji. Dzięki temu NVR może zmniejszyć częstotliwość detekcji bez zamieniania każdej pominiętej klatki w całkowicie ślepy punkt dla obiektów, które są już śledzone.

DeepStream jawnie obsługuje pomijanie klatek detekcji podczas śledzenia między detekcjami, a aktualne zalecenia dotyczące trackera wskazują, że skuteczniejsze śledzenie może pozwolić na zwiększenie odstępu między detekcjami przy mniejszej utracie dokładności. Zysk jest większy, gdy główny detektor jest znacznie bardziej kosztowny niż tracker.

Detektor nadal wykonuje zadania, których śledzenie nie może przejąć: wykrywa nowe obiekty, koryguje dryf, odzyskuje cele po zasłonięciu oraz kończy lub ponownie inicjalizuje niejednoznaczne śledzenia. Metody powiązań, takie jak śledzenie przez powiązywanie detekcji między klatkami, opierają się na detekcjach jako dowodach. Zbyt duże zwiększenie odstępu ostatecznie oznacza więc wymianę oszczędności obliczeniowych na pominięte wejścia i słabsze korekty.

Rzeczywista oszczędność zależy od kosztu detektora, ruchu w scenie i stabilności śledzenia

Śledzenie wiąże się z własnymi aktualizacjami stanu, estymacją ruchu, porównywaniem cech i pracą związaną z powiązywaniem obiektów. Właściwe pytanie brzmi więc, czy ten dodatkowy koszt jest mniejszy niż koszt wnioskowania, którego potok może dzięki niemu uniknąć. Ciężki detektor lub klasyfikator pomocniczy daje większe możliwości oszczędzania niż niewielki detektor działający na słabo obciążonym akceleratorze.

Tracker oszczędza również mniej w zatłoczonych scenach, w których wiele obiektów pojawia się, znika, nakłada na siebie lub szybko zmienia wygląd, ponieważ częściej trzeba tworzyć cele i ponownie identyfikować obiekty. Dlatego podczas praktycznego dostrajania NVR należy traktować częstotliwość detekcji kamery oraz szybkość wnioskowania detektora jako osobne pomiary, a następnie porównywać opóźnienie trackera, odstęp między wnioskowaniami, liczbę aktywnych śledzeń, częstotliwość odświeżania klasyfikatorów i wykrywanie zdarzeń na tych samych nagranych klipach, zamiast zakładać, że jeden odstęp będzie zawsze optymalny.

Powiązany tryb awarii omówiono w wyjaśnieniu ZimaSpace, zgodnie z którym krótkie zdarzenia mogą zniknąć, zanim powstanie prawidłowe śledzenie. Śledzenie ogranicza powtarzaną pracę dopiero wtedy, gdy istnieje użyteczny stan, dlatego efektywność obliczeniową i wykrywanie krótkich zdarzeń trzeba mierzyć łącznie.

Praktyczny punkt opłacalności można mierzyć jako czas pracy akceleratora zaoszczędzony na jednym śledzonym obiekcie, a nie wyłącznie jako liczbę klatek na sekundę trackera. Jeśli tracker zużywa niemal tyle czasu urządzenia co pominięte wnioskowanie detektora lub częsta ponowna identyfikacja zmusza klasyfikatory do ponownego działania, pozorne zmniejszenie liczby wnioskowań może nie przełożyć się na użyteczny zapas mocy dla kolejnych kamer.

Centrum Technologii i Sztucznej Inteligencji

Więcej do przeczytania

Get More Builds Like This

Stay in the Loop

Get updates from Zima - new products, exclusive deals, and real builds from the community.

Stay in the Loop preferences

We respect your inbox. Unsubscribe anytime.