Hoe vermindert objecttracking herhaalde inferentie in een thuis-NVR?

Eva Wong is de Technisch Schrijver en en vaste knutselaar bij ZimaSpace. Een levenslange geek met een passie voor homelabs en open-source software, zij is gespecialiseerd in het vertalen van complexe technische concepten naar toegankelijke, praktische handleidingen. Eva gelooft dat zelf-hosting leuk moet zijn, niet intimiderend. Met haar tutorials stelt ze de community in staat om hardware-setup te ontrafelen, van het bouwen van hun eerste NAS tot het beheersen van Docker-containers.

Objecttracking vermindert herhaalde NVR-inferentie door de identiteit van doelen tussen frames te behouden, zodat latere waarnemingen bestaande status kunnen hergebruiken in plaats van hetzelfde doel als nieuw te behandelen.

Een thuis-NVR heeft nog steeds objectdetectie nodig om een persoon, voertuig of dier te ontdekken, maar niet elke vervolgbeslissing hoeft bij elk videoframe opnieuw vanaf nul te beginnen. Zodra een tracker detecties aan een blijvend doel koppelt, kan de pipeline positie, identiteit, leeftijd en opgeslagen kenmerken meenemen, dure detectorpassages minder vaak uitvoeren en secundaire modellen alleen opnieuw uitvoeren wanneer het doel wezenlijk verandert. De besparing komt dus voort uit het hergebruiken van status, niet doordat tracking vision-inferentie op magische wijze vervangt.

Een detectie kan goedkoper opnieuw worden gebruikt zodra er een blijvende track aan is gekoppeld

Objectdetectie produceert een kader en klasse voor één geanalyseerd frame, terwijl tracking continuïteit toevoegt door te bepalen of een nieuwe waarneming bij een al bekend doel hoort. Die koppeling zet een stroom visueel vergelijkbare kaders om in een object met status, waarvan positie en identiteit in de loop der tijd kunnen worden bijgewerkt in plaats van bij elk frame onafhankelijk opnieuw te worden aangemaakt.

Een tracker voor meerdere objecten kan blijvende track-ID's bijhouden, zodat latere fasen van de pipeline een stabiele sleutel hebben voor dezelfde persoon of hetzelfde voertuig. De nuttige uitvoer is niet slechts een nieuwe rechthoek, maar een doelrecord dat meerdere waarnemingen overleeft en geschiedenis kan bevatten.

Dit is het eerste rekenvoordeel, omdat vervolgregels niet langer hoeven te bepalen of elk kader een volledig nieuw object is. Verblijftijd in zones, richting, deduplicatie van gebeurtenissen en downstream-modellen voor kenmerken kunnen naar één trackrecord verwijzen totdat het doel vertrekt, verloren gaat of opnieuw wordt toegewezen.

Stabiele track-ID's laten secundaire modellen eerdere classificaties hergebruiken

De grootste herhaalde kostenpost is vaak niet de tracker zelf, maar een secundair model dat hetzelfde al gedetecteerde object anders in elk frame opnieuw zou classificeren. Als een track-ID stabiel blijft, kan de pipeline een eerder kenmerkresultaat aan dat doel koppelen en het alleen vernieuwen wanneer het uiterlijk of de grootte van het object genoeg verandert om een nieuwe inferentie te rechtvaardigen.

DeepStream implementeert dit patroon door secundaire classificatie per object-ID te cachen en opnieuw inferentie uit te voeren wanneer een object voor het eerst verschijnt of het oppervlak van het begrenzingskader aanzienlijk toeneemt. Een thuis-NVR kan dezelfde architectuur toepassen op kenmerken zoals voertuigtype, kledingcategorie, aanwezigheid van een pakket of een andere dure classifier per object.

De cache blijft alleen geldig zolang de identiteit van het doel betrouwbaar blijft en het hergebruikte kenmerk naar verwachting stabiel is. Een kleurclassifier kan veel hergebruikte frames verdragen, terwijl houding, gezichtsrichting of de toestand van een gedragen object snel genoeg kan veranderen om periodieke of gebeurtenisgestuurde vernieuwing noodzakelijk te maken.

Hergebruik van kenmerken werkt het best wanneer de opgeslagen eigenschap langzamer verandert dan de positie van het object. Daarom kan een trackingpipeline een label voor het voertuigtype gedurende veel frames hergebruiken en tegelijk het kader elk frame bijwerken. Zo worden snelle geometrische status en tragere semantische status van elkaar gescheiden, in plaats van alle uitvoer met dezelfde frequentie te vernieuwen.

Tracking kan frames overbruggen waarin de primaire detector wordt overgeslagen

Zodra een doel is vastgesteld, kunnen sommige trackers de locatie ervan doorgeven in frames waarin de primaire detector niet draait, om de voorspelde status vervolgens te vergelijken met de nieuwe detectie wanneer die weer beschikbaar is. Hierdoor kan de NVR de detectiefrequentie verlagen zonder dat elk overgeslagen frame een volledig blinde vlek wordt voor objecten die al worden gevolgd.

DeepStream ondersteunt expliciet het overslaan van detectorframes terwijl objecten tussen detecties worden gevolgd. De actuele richtlijnen voor trackers vermelden bovendien dat sterkere tracking een groter detectie-interval mogelijk kan maken met minder nauwkeurigheidsverlies. De winst wordt groter wanneer de primaire detector veel duurder is dan de tracker.

De detector heeft nog steeds taken die tracking niet kan overnemen: een nieuw object ontdekken, drift corrigeren, herstellen na occlusie en onduidelijke tracks beëindigen of opnieuw initialiseren. Associatiemethoden zoals tracking door detecties tussen frames te koppelen zijn afhankelijk van detecties als bewijs. Als het interval te groot wordt, worden rekenbesparingen daarom uiteindelijk ingeruild voor gemiste binnenkomsten en minder sterke correcties.

De nettobesparing hangt af van detectiekosten, beweging in de scène en stabiliteit van tracks

Tracking voegt eigen statusupdates, bewegingsschatting, functievergelijking en associatiewerk toe. De juiste vraag is daarom of die extra kosten kleiner zijn dan de inferentie die de pipeline hierdoor kan vermijden. Een zware detector of secundaire classifier biedt meer ruimte voor besparingen dan een kleine detector die op een licht belaste accelerator draait.

Een tracker bespaart ook minder in drukke scènes waarin veel objecten binnenkomen, vertrekken, elkaar overlappen of snel van uiterlijk veranderen, omdat het aanmaken van doelen en heridentificatie vaker plaatsvinden. Bij praktische NVR-tuning worden daarom de detectiesnelheid van de camera en de inferentiesnelheid van de detector afzonderlijk gemeten. Vervolgens worden trackerlatentie, inferentie-interval, het aantal actieve tracks, vernieuwingen van classifiers en gebeurtenisherkenning op dezelfde opgenomen clips vergeleken, in plaats van ervan uit te gaan dat één interval overal efficiënt is.

De aangrenzende foutmodus wordt behandeld in ZimaSpace's uitleg dat korte gebeurtenissen kunnen verdwijnen voordat er een geldige track ontstaat. Tracking vermindert herhaald werk pas nadat er bruikbare status bestaat. Daarom moeten rekenefficiëntie en het herkennen van korte gebeurtenissen gezamenlijk worden gemeten.

Het praktische omslagpunt kan worden gemeten als bespaarde acceleratortijd per gevolgd object, en niet alleen aan de hand van tracker-FPS. Als de tracker bijna evenveel apparaattijd verbruikt als het overgeslagen detectorwerk, of als frequente heridentificatie classifiers opnieuw laat draaien, vertaalt de schijnbare vermindering van het aantal inferenties zich mogelijk niet in bruikbare ruimte voor extra camera's.

Tech & AI HUB

Meer om te lezen

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.