Maschinelles Sehen: berührungsloses Tracking von beweglichen Objekten - Digitalisierung mit Softarex

Maschinelles Sehen: berührungsloses Tracking von beweglichen Objekten

Im einem vorherigen Artikel haben wir uns verschiedene Möglichkeiten angesehen, wie man eine moderne KI so trainieren kann, damit sie u.a. so menschlich wie möglich werden. Dieses Thema befasst sich mit Maschinellem Sehen (Computer Vision) – einem Bereich der Informatik, der Computer dazu befähigt, wie das menschliche Sehvermögen Dinge zu erkennen und zu verarbeiten und dementsprechend eine Ausgabe zu liefern. Im Zeitalter der Digitalisierung spielt die KI-Fähigkeit, bewegte Objekte zu tracken und analysieren zu können, eine sehr wichtige Rolle. Es ergeben sich ungeahnte Möglichkeiten: intelligente Drohnen, Autos, Roboter, Sportanalysen, Kontakt-TV, Marketing, Werbung – die Liste der Anwendungsfälle ist nahezu endlos. Und je mehr Objekte die moderne KI verfolgen und analysieren kann, desto mehr Möglichkeiten können wir entdecken. Deshalb sind Lösungen wie das erfolgreiche visuelle Objekttracking per Software sehr wichtig.

Gleichzeitiges Tracken: mehrere bewegliche Objekte und ihre Bewegungseigenschaften

Das Tracking mehrerer Objekte gleichzeitig per Video ist in beim Maschinellen Sehen von wesentlicher Bedeutung und wird in verschiedenen Videoanalyse-Szenarien verwendet, wie z. B. visuelle Überwachung von beweglichen Gegenständen (z.B. auf einem Förderband), Sportanalyse, Navigation von Robotern, autonomes Fahren, Mensch-Computer-Interaktion und medizinische Visualisierung. Beim Tracking von Objekten einer bestimmten Kategorie wie z. B. Sportler oder Autos machen Detektoren die Verfolgung einfacher. Normalerweise erfolgt dies in zwei Schritten: Erkennen und Tracken.

Objekterkennung

Das Verfolgen eines Objekts geschieht in der Softwareentwicklung über die Einbringung von Begrenzungsrechtecken um das jeweilige Objekt im Bild. Die Objekterkennung identifiziert und kennzeichnet diese Bildobjekte mithilfe von Begrenzungsrechtecken.

computer-vision

Bei Softarex wird im Moment YOLO dafür genutzt. YOLO (You Only Look Once; dt. Man sieht nur einmal hin) ist ein Darknet-basierter Echtzeit-Objektdetektor, der diese Aufgabe sehr gut erledigt. Das YOLO-Modell scannt einen bestimmten Teil des Bildes schnell und ohne Genauigkeitsverlust nur ein einziges Mal.

Die neueste Version namens YOLOv3 basiert auf dem  Netzwerk Darknet-53 und enthält 53 Faltungsschichten (convolutional layers), wodurch eine höhere Genauigkeit beim Erkennen und Konstruieren eines Begrenzungsrechtecks entsteht. YOLOv3 übertrifft bei der Verarbeitungsgeschwindigkeit eines einzelnen Bildes sogar die Geschwindigkeit der R-CNN- und RetinaNet-Modelle und verarbeitet eine Videosequenz von 10-15 FPS selbst auf low-cost GPU’s schnell und korrekt.

Objekterkennung

 

Objekttracking

Die Grundprinzipien des Objekttracking basieren auf der Online-Version des AdaBoost-Algorithmus, bei dem ein Kaskaden-HAAR-Detektor verwendet wird. Dieses Modell lernt aus positiven und negativen Beispielen eines Objekts. Benutzer oder ein Objekterkennungsalgorithmus legen einen Begrenzungsrahmen fest, was als positives Gebiet gilt, während Bildbereiche außerhalb eines Begrenzungsrahmens als negativ angesehen werden. Im neuen Rahmen beginnt der Klassifizierer dann in der Umgebung des vorherigen Standorts und bildet diesbezüglich eine Schätzung, sodass die neue Position des positiven Beispiels für das Objekt genau dort liegt, wo die Bewertung maximal ist. Dann wird der Klassifizierer mit jedem neuen Rahmen aktualisiert.

Objekttracking

Kernelized Correlation Filters (KFC) ist ein Softwaretracker mit hoher Genauigkeit und Geschwindigkeit. Hier werden Segmente aus dem ursprünglichen positiven Bereich verwendet, um zur Initialisierung ein mathematisches Modell für überlappende Abschnitte zu bilden. Diese Art von Tracking kann die Objekterkennung über einen festgelegten Zeitraum wiederholen, um die Genauigkeit zu verbessern und erneut zu initialisieren.

Zur Berechnung von Bewegungseigenschaften müssen die Koordinaten und Trajektorien von Videokoordinaten mithilfe einer homografischen Umwandlung in Koordinaten einer realen Szene konvertiert werden.

transformation

Für Sportanalyse-Anwendungen ist beispielsweise die reale Szene die Beschreibung eines Spielfelds und seiner Maße. Diese Beschreibung wird in ein Feldmodell übertragen, das anschließend anhand von Videobildern analysiert wird. Ein Feldmodell besteht aus Zonierungslinien und deren Schnittpunkten, die andhand der Hough-Transformationsmethode ermittelt werden. Als Nächstes vergleichen wir dann die gefundenen Linien mit dem Feldmodell, wählen die entsprechenden Punkte aus und berechnen die Projektionsmatrizen, mit denen wir die Bildschirmkoordinaten in die Koordinaten des Feldmodells umwandeln. Wenn ungenaue Übereinstimmungen auftreten, wird eine der drei robusten Methoden RANSAC, LMeDS oder PHO verwendet, die viele zufällige Teilmengen der entsprechenden Punktpaare ausprobieren, die Homographiematrix mit einer Teilmenge und einem einfachen Algorithmus der kleinsten Quadrate bewerten und dann die Qualität der sich daraus ergebenden Homographie berechnen. Die beste Teilmenge wird dann verwendet, um eine anfängliche Schätzung der Homographiematrix zu erhalten. Im Anschluss werden dann nur noch die Bewegungsmerkmale der Objekte bezüglich der Trajektorien und Koordinaten im Spielfeldmodell berechnet.

Objekttracking Softarex

Und um ein Video mit guter Qualität aufzunehmen, ist es natürlich besser, mit stationären Kameras aufzunehmen. Wenn die Aufnahmen von wackeligen Kameras aufgenommen wurden, müssen erst jegliche Jitter- und Verschiebungseffekte entfernt werden. In diesem Fall nutzen wir die Bewegungskompensation mit Optical Flow.

Softarex-Erfahrung

Wir haben mehrere Projekte des Maschinellen Sehens im Portfolio, darunter ein recht komplexes System für die Video-Stream-Analyse, ein System zum Verfolgen und Erfassen von Parametern für bewegliche Objekte und einiges mehr. Der vorgestellte Fall ist nur einer von vielen, daher finden Sie noch viele andere unserem Portfolio im Internet. Wir sind am Austausch mit anderen Softwareentwicklern sehr interessiert. Wenn Sie also Fragen oder Ideen haben, schreiben Sie uns.