Drones lenen zich er erg makkelijk toe om objecten op de grond vanuit de lucht te detecteren. Zo kunnen fruittelers bijvoorbeeld met een drone hun aardbeibloemen gaan tellen om vervolgens de oogst te voorspellen. Anderzijds is het voor veel instanties ook belangrijk om vanaf de grond de drones in de lucht te gaan detecteren. Denk maar aan luchtvaartautoriteiten of bewakingsagenten van een gevangenis. Beide soorten van toepassingen zijn vormen van object tracking, van en door drones. In dit artikel gaan we dieper in op de technische aspecten die komen kijken bij het ontwikkelen van zulke toepassingen.

Object tracking is een belangrijk onderdeel van computervisie, vooral op het gebied van bewaking, verkeersleiding, mens-robotinteractie en medische beeldvorming. ‘Tracking’ bestaat uit het proces van het schatten van het traject van een object in volgende frames, gegeven het selectiekader (d.w.z. positie en grootte) van het object in het oorspronkelijke frame. Nauw verwant zijn kenmerkdetectoren; die detecteren alleen een specifiek object op elk afzonderlijk frame, puur op basis van overeenkomende kenmerken. Pure trackers zijn bedoeld om het traject te volgen en de toekomstige locatie van het object te voorspellen. Dit elimineert het risico dat het gevolgde object wordt aangezien voor een visueel vergelijkbaar object, waardoor het object dat wordt gevolgd stabieler wordt.

Er zijn veel variabelen die de prestaties van trackers beïnvloeden, zoals variaties in belichting, schaalvariaties, objectrotatie, occlusie en achtergrondruis, en camerabewegingen. Momenteel is er een breed scala aan verschillende volgalgoritmen, maar geen enkele kan al die problemen tegelijkertijd aan. Vanwege de relevantie in tal van toepassingen, wordt er steeds meer tijd en moeite gestoken in het uitdagende onderzoek naar objecttrackers. In deze studie zullen we een nieuwe tracker vergelijken met drie beschikbare trackers, en onderzoeken of we dichter bij een universele tracker komen

Er zijn drie belangrijke redenen om een ​​objecttracker te gebruiken? Ten eerste maakt het gebruik van een objecttracker het mogelijk om objectdetectie slechts één keer uit te voeren en niet op elk frame. De 2e krijgt een unieke ID voor elk object dat in een video wordt gedetecteerd, en de 3e tracking werkt meestal wanneer objectdetectie mislukt. Er zijn verschillende manieren om objecten te volgen met behulp van vision. Sommige trackers zijn gebaseerd op beeldverwerkingstechnieken en andere op deep learning.

Vanwege het wijdverbreide gebruik zijn sommige trackers al geïntegreerd in populaire bibliotheken, zoals OpenCV [3]. Die trackers zijn gemakkelijk te gebruiken, zoals blijkt uit verschillende tutorials [5, 6]. De meest gebruikte OpenCV-trackers zijn KCF [7], CRST [8] en MOSSE [9]. Ze gebruiken allemaal filters op een beperkt zoekgebied rond de voorspelde locatie om een ​​begrenzingskader te schatten dat het object op zijn nieuwe locatie omvat. Ze vertrouwen echter op verschillende algoritmen en filters en hebben bijgevolg hun eigen sterke punten en beperkingen [5,6]. In tabel 1 een lijst van de beschikbare benaderingen.

Tafel 1. Lijst met algoritmes die beschikbaar zijn voor het volgen van objecten in de literatuur.

De verschillende algoritmen die in de literatuur worden gevonden, zijn gebaseerd op twee verschillende soorten modellen: een bewegingsmodel of een visueel verschijningsmodel.

a) Bewegingsmodel: de beweging van het object begrijpen en modelleren, en het dynamische gedrag van het object vastleggen,
b) Visual Appearance Model: begrijp het uiterlijk van het object en leer het object te onderscheiden van de achtergrond,

In de volgende sectie wordt een kort overzicht van de componenten die in een tracking-algoritme worden gevonden, beschreven, en vervolgens wordt een overzicht van het object tracker-algoritme ontwikkeld bij Flanders Make gepresenteerd met twee voorbeelden van use cases over het volgen van componenten die worden gebruikt tijdens de assemblage van een product en het volgen van drones.

 

Componenten van een tracking algoritme

Een tracker is samengesteld uit vier bouwstenen die beginnen met “Target initialization” waarin een begrenzingskader rond het doel wordt ingesteld of verkregen uit een objectdetectormodule. Het tweede blok is de “Appearance/Motion modeling” waar het visuele uiterlijk van het object of zijn dynamiek (en) wordt geleerd. Vervolgens komt de “Motion estimation” die bestaat uit het voorspellen van een zone waar het doel waarschijnlijk aanwezig zal zijn in de volgende frames. En tot slot, scan de gedefinieerde zone in de vorige stap met behulp van het visuele model om de locatie van het doel “Target positioning” te vinden.

 

Tracking gebaseerd op Learning/Training Strategy

  • ONLINE LEARNING TRACKERS:
    • Deze trackers leren doorgaans over het te volgen object met behulp van het initialisatieframe en enkele daaropvolgende frames.
    • Deze trackers zijn algemener.
  • OFFLINE LEARNING TRACKERS:
    • Deze trackers leren offline over de complete concepten, d.w.z. trainen een tracker om personen te identificeren.
    • Deze trackers leren niets tijdens runtime.

 

Object Tracker @ Flanders Make

Tijdens de uitvoering van het FAMAR-project hadden de experimenten die werden uitgevoerd om componenten van een product (bijv. Compressor) te volgen met de ingebouwde OpenCV-trackers (KCF, CSRT, MOSSE) onbevredigende resultaten en Region Of Interest (ROI) paste zich niet aan bij het roteren van het object. Daarom is er een nieuwe trackerversie ontwikkeld en geïmplementeerd die het voorgrondmasker en het huidmasker van het object gebruikt om te volgen. Deze objecttracking is gebaseerd op intensiteitsdrempels, dus vereist een initiële training wanneer het object wordt gedetecteerd en contouren retourneert, in plaats van alleen een begrenzingskader.

Wanneer de objectdetector een object detecteert, stuurt deze de ROI van het object naar de objecttracker. Van de eerste opeenvolgende frames wordt een intensiteitsmodel (RGB) gemaakt van de kleuren binnen die ROI. Na de initialisatiefase (bijv. de eerste 5 frames) wordt elk frame als volgt verwerkt: bij elk frame wordt de ROI die bij het vorige frame is gedetecteerd, gebruikt om de objecttracker te begeleiden. Als er geen objectcontour(en) worden gedetecteerd, wordt de ROI-voorspelling aangeroepen.

De prestaties van deze nieuwe objecttracker werden geëvalueerd op twee verschillende applicaties. Voor het eerste experiment werden video’s van een montageoperatie verzameld om de tracker in een industriële omgeving te valideren. Hier werd de grondwaarheid handmatig geannoteerd. Voor het tweede experiment worden video’s van de drone-vs-bird detectie-uitdaging gebruikt, waarbij de ground-truth annotaties dienen om de drone-tracker te initialiseren en later om de gevolgde drone-contour te valideren. De prestaties worden vergeleken met de resultaten die zijn verkregen met trackers die beschikbaar zijn in de OpenCV-bibliotheek: KCF, CRST en MOSSE. De trackingresultaten van de verschillende methoden staan ​​tegenover elkaar in termen van de Intersection over Union (IoU)-metriek en hun verwerkingstijd. De IoU-waarde wordt berekend als de verhouding tussen het overlappingsgebied en het union gebied. Het overlappingsgebied is het overlappende gebied tussen het bijgehouden begrenzingsvak en het grond-waarheidskader, en het union gebied is het totale gebied dat door beide begrenzende kaders wordt bestreken.

 

Resultaten van experiment 1

Frames uit de drie montagescènes met onze bijgehouden contour (blauw) en de meegeleverde grondwaarheid (rood).

Statistieken van het volgen van onderdelen met onze methode en CSRT

 

Resultaten van experiment 2

Frames van de vier drone-video’s met onze gevolgde contour (blauw) en de meegeleverde grondwaarheid (rood)

Statistieken van het volgen van drones met onze methode en CART

Van deze resultaten; de nieuwe adaptieve op intensiteit gebaseerde tracker (uitgebreid met contourmenging en schatting) presteert beter dan de drie onderzochte OpenCV-trackers in termen van nauwkeurigheid, snelheid (5 keer sneller) en stabieler in moeilijke situaties met grote variaties in objectschaal en pose, occlusie en achtergrondruis. Bovendien dreef de tracker niet weg of stopte hij voordat hij kon afdrijven.

Auteur
Merwan Birem
Merwan is Research Engineer bij Flanders Make (Leuven, België) en werkt in het DecisionS core lab. Merwans onderzoek richt zich op de gebieden computervisie (2D en 3D), beeld- en videoverwerking, machine- en deep learning-algoritmen voor detectie, classificatie, kwaliteitscontroleprocessen en robottoepassingen

Contacteer EUKA/Flanders Make voor meer informatie
Updates en nieuwe artikels ontvangen in je mailbox? Schrijf je dan snel in voor onze nieuwsbrief!

Pin It on Pinterest