Erkennung und Klassifikation
von Wildtieren
In Zuge seiner Masterarbeit hatte Lukas Nepelius einen Software-Prototypen erstellt, mit dem es möglich ist, Tiere auf Wildtierkameravideos zu erkennen und klassifizieren. Dabei wurden Techniken aus der Computer Vision angewendet, unter anderem die Objekterkennung und das Objektverfolgen. Den Forschenden des Nationalparks soll idealerweise die Arbeit des manuellen Zählens von vorkommenden Tierarten auf den Videos abgenommen werden.
Objekterkennung
Für die Objekterkennung wurde der YOLOv3 Algorithmus verwendet, der ein Eingabebild in ein Raster mit S mal S großen Zellen unterteilt. Für jede Zelle des Rasters werden Wahrscheinlichkeiten für die Rahmen und die Klassen der Objekte berechnet. Die Wahrscheinlichkeit gibt dabei die Sicherheit des Algorithmus in Bezug auf den Rahmen und die Klasse des Objektes an. Zum Beispiel ist sich die Methode zu 70% sicher, dass es sich bei einem Objekt um ein Schaf handelt. Beide Wahrscheinlichkeiten werden zu einer finalen Detektion kombiniert.
Objektverfolgung
Die Rahmen der Objekte, die vom YOLO Algorithmus extrahiert werden, werden als Eingabe für die Objektverfolgung verwendet. Anhand des initialen Rahmens werden die Objekte über mehrere Bilder hinweg "verfolgt" und somit kann ein Zusammenhang zwischen den Bildern hergestellt werden. Dieser Zusammenhang ist wichtig, da damit gleiche Objekte in einem Video festgestellt werden können. Ein Objekterkennungs-Algorithmus alleine würde zum Beispiel eine Gams mehrere Male zählen, auch wenn es sich um ein und dasselbe Tier handelt.
Es gibt viele verschiedene Methoden für die Objektverfolgung unter anderem die CSRT Methode (Engl.: Discriminative Correlation Filter with Channel and Spatial Reliability) von OpenCV. Schließlich wurde diese Methode ausgewählt auch aufgrund ihrer hohen Präzision.
GUI
Ferner wurde eine Benutzeroberfläche erstellt, mit der man beliebig viele Videos eines Ordners auswählen und mit der beschriebenen Methode verwenden kann. Die Ergebnisse werden nach Ausführung auf der GUI angezeigt und können auch als CSV oder TXT Datei exportiert werden.
Ergebnisse
Um einen Vergleichswert für die Performanz des Algorithmus zu erhalten, wurden die Ergebnisse des Programms mit meiner eigenen Einschätzung verglichen. Hierfür habe ich bekannte Metriken für die Objekterkennung verwendet wie die Genauigkeit (0,800), Präzision (0,980), Empfindlichkeit (0,577), F1 (0,639) und Jaccard (0,563) Wert. Für alle Werte gilt, je näher bei 1 desto ähnlicher ist die Einschätzung des Algorithmus mit der eigenen Einschätzung in Bezug auf das Zählen und Klassifizieren der Tiere.
[Text: Lukas Nepelius]
Das könnte dich auch interessieren: