Gesundheitswesen

KI-Pose-Schätzung in Fitness-Anwendungen

mm
Unite.AI zu deinen bevorzugten Quellen auf Google hinzufügen

Von Maksym Tatariants, Data Science Engineer bei MobiDev.

Menschliche Pose-Schätzung bezieht sich auf eine Technologie – ziemlich neu, aber schnell evolvierend –, die eine wichtige Rolle in Fitness- und Tanzanwendungen spielt, indem sie es uns ermöglicht, digitale Inhalte über die reale Welt zu legen.

In Kürze ist das Konzept der menschlichen Pose-Schätzung eine computerbasierte Technologie, die in der Lage ist, die menschliche Haltung zu erkennen und zu verarbeiten. Der wichtigste und zentrale Teil dieser Technologie ist die Modellierung des menschlichen Körpers. Drei Körpermodelle sind innerhalb der aktuellen Systeme der menschlichen Pose-Schätzung am prominentesten – skeletonbasiert, konturbasiert und volumenbasiert.

Skeletonbasiertes Modell

Dieses Modell besteht aus einer Reihe von Gelenken (Schlüsselpunkten), wie Knien, Knöcheln, Handgelenken, Ellenbogen, Schultern und der Ausrichtung der Körperglieder. Dieses Modell ist bekannt für seine Flexibilität und eignet sich daher sowohl für dreidimensionale als auch für zweidimensionale menschliche Pose-Schätzung. Bei der dreidimensionalen Modellierung verwendet die Lösung ein RGB-Bild und findet die X-, Y- und Z-Koordinaten der Gelenke. Bei der zweidimensionalen Modellierung ist es die gleiche Analyse eines RGB-Bildes, aber mit den X- und Y-Koordinaten.

Konturbasiertes Modell

Dieses Modell nutzt die Konturen des Rumpfes und der Gliedmaßen des Körpers sowie ihre ungefähre Breite. Hier nimmt die Lösung die Silhouette des Körperrahmens und rendert Körperteile als Rechtecke und Grenzen innerhalb dieses Rahmens.

Volumenbasiertes Modell

Dieses Modell verwendet in der Regel eine Reihe von 3D-Scans, um die Form des Körpers zu erfassen und in ein Framework von Formen und geometrischen Netzen umzuwandeln. Diese Formen erstellen eine 3D-Serie von Posen und Körperdarstellungen.

Wie funktioniert die 3D-menschliche Pose-Schätzung

Fitness-Anwendungen verlassen sich in der Regel auf die 3D-menschliche Pose-Schätzung. Für diese Anwendungen ist die Menge an Informationen über die menschliche Pose desto besser. Mit dieser Technik zeichnet der Benutzer der Anwendung sich selbst auf, während er eine Übung oder ein Trainingsprogramm durchführt. Die Anwendung analysiert dann die Körperbewegungen des Benutzers und bietet Korrekturen für Fehler oder Ungenauigkeiten.

Der typische Ablauf einer solchen Anwendung folgt in der Regel diesem Muster:

  • Zunächst werden Daten über die Bewegungen des Benutzers während der Ausführung der Übung gesammelt.
  • Als Nächstes wird bestimmt, wie korrekt oder inkorrekt die Bewegungen des Benutzers waren.
  • Schließlich zeigt die Anwendung dem Benutzer über die Benutzeroberfläche, welche Fehler er möglicherweise gemacht hat.

Derzeit ist der Standard in der menschlichen Pose-Technologie die COCO-Topologie. Die COCO-Topologie besteht aus 17 Landmarken über den Körper, von dem Gesicht bis zu den Armen und Beinen. Beachten Sie, dass COCO nicht die einzige menschliche Körperpose-Framework ist, sondern lediglich das am häufigsten verwendete.

Dieser Prozess nutzt typischerweise tiefes maschinelles Lernen, um die Gelenke bei der Schätzung der Pose des Benutzers zu extrahieren. Es verwendet dann geometriebasierte Algorithmen, um die relative Position der erkannten Gelenke zu analysieren. Wenn ein dynamisches Video als Quelldaten verwendet wird, kann das System eine Reihe von Frames und nicht nur ein einzelnes Bild verwenden, um die Schlüsselpunkte zu erfassen. Das Ergebnis ist eine wesentlich genauere Darstellung der tatsächlichen Bewegungen des Benutzers, da das System Informationen aus den benachbarten Frames verwenden kann, um Unsicherheiten bezüglich der Position des menschlichen Körpers im aktuellen Frame aufzulösen.

Von den aktuellen Techniken für die Verwendung der 3D-Pose-Schätzung in Fitness-Anwendungen ist der genaueste Ansatz, zunächst ein Modell anzuwenden, um 2D-Schlüsselpunkte zu erkennen, und dann die 2D-Erkennung mit einem anderen Modell zu verarbeiten, um sie in 3D-Schlüsselpunkte umzuwandeln.

In der Forschung, die wir kürzlich veröffentlichten, wurde eine einzelne Videoquelle verwendet, und es wurden konvolutionale neuronale Netze mit dilatierter zeitlicher Konvolution angewendet, um die 2D- in 3D-Schlüsselpunkte umzuwandeln.

Nach der Analyse der aktuellen Modelle haben wir festgestellt, dass VideoPose3D die Lösung ist, die am besten auf die Bedürfnisse der meisten AI-getriebenen Fitness-Anwendungen zugeschnitten ist. Die Eingabe mit diesem System sollte es ermöglichen, eine 2D-Menge von Schlüsselpunkten zu erkennen, wobei ein vorab trainiertes Modell auf dem COCO-2017-Datensatz als 2D-Erkennung verwendet wird.

Für die genaueste Vorhersage der Position eines aktuellen Gelenks oder Schlüsselpunkts kann VideoPose3D mehrere Frames über eine kurze Sequenz von Zeit verwenden, um 2D-Pose-Informationen zu generieren.

Um die Genauigkeit der 3D-Pose-Schätzung weiter zu verbessern, kann mehr als eine Kamera alternative Blickwinkel des Benutzers erfassen, der die gleiche Übung oder Routine durchführt. Beachten Sie jedoch, dass es mehr Rechenleistung und eine spezielle Modellarchitektur erfordert, um mit mehreren Video-Stream-Eingaben umzugehen.

Kürzlich präsentierte Google (GOOGL ) ihr BlazePose-System, ein modellbasiertes System für die Schätzung der menschlichen Pose auf mobilen Geräten, indem die Anzahl der analysierten Schlüsselpunkte auf 33 erhöht wird, eine Superset der COCO-Schlüsselpunkte und zwei andere Topologien – BlazePalm und BlazeFace. Als Ergebnis kann das BlazePose-Modell Pose-Vorhersageergebnisse erzeugen, die konsistent mit Handmodellen und Gesichtsmodellen sind, indem es Körpersemantik artikuliert.

Jedes Komponente in einem maschinellen Lern-System für die menschliche Pose-Schätzung muss schnell sein und darf maximal ein paar Millisekunden pro Frame für die Pose-Erkennung und -Verfolgung benötigen.

Da die BlazePose-Pipeline (die die Pose-Erkennung und -Verfolgung umfasst) auf einer Vielzahl von mobilen Geräten in Echtzeit arbeiten muss, ist jeder Teil der Pipeline so konzipiert, dass er sehr rechenleistungseffizient ist und mit 200-1000 FPS läuft.

Die Pose-Erkennung und -Verfolgung in einem Video, in dem es nicht bekannt ist, ob und wo sich eine Person befindet, erfolgt typischerweise in zwei Stufen.

In der ersten Stufe wird ein Objekterkennungsmodell ausgeführt, um die Anwesenheit eines Menschen zu lokalisieren oder dessen Abwesenheit zu bestimmen. Nachdem die Person erkannt wurde, kann das Pose-Erkennungsmodul den lokalisieren Bereich verarbeiten, der die Person enthält, und die Position der Schlüsselpunkte vorhersagen.

Ein Nachteil dieses Aufbaus ist, dass sowohl das Objekterkennungs- als auch das Pose-Erkennungsmodell für jeden Frame ausgeführt werden müssen, was zusätzliche Rechenressourcen verbraucht. Die Autoren von BlazePose haben jedoch eine clevere Möglichkeit entwickelt, um dieses Problem zu umgehen und andere Schlüsselpunkterkennungs-Module wie FaceMesh und MediaPipe Hand effizient zu nutzen.

Die Idee ist, dass ein Objekterkennungsmodell (ein Gesichtserkennungsmodell im Falle von BlazePose) nur zum Starten der Pose-Verfolgung im ersten Frame verwendet werden kann, während die nachfolgende Verfolgung der Person mithilfe ausschließlich der Pose-Vorhersagen nach einiger Pose-Ausrichtung erfolgen kann, wobei die Parameter für diese Ausrichtung mithilfe des Pose-Erkennungsmodells vorhergesagt werden.

Das Gesicht produziert das stärkste Signal für die Position des Rumpfes für das neuronale Netzwerk, da es aufgrund der relativ kleinen Varianz in der Erscheinung und des hohen Kontrasts in seinen Merkmalen resultiert. Folglich ist es möglich, ein schnelles, low-overhead-System für die Pose-Erkennung durch eine Reihe von gerechtfertigten Annahmen zu erstellen, die auf der Idee basieren, dass der menschliche Kopf in jedem persönlichen Anwendungsfall lokalisierbar sein wird.

Herausforderungen der menschlichen Pose-Schätzung überwinden

Die Verwendung der Pose-Schätzung in Fitness-Anwendungen stellt die Herausforderung dar, die enorme Vielfalt an menschlichen Posen, wie z.B. die Hunderte von Asanas in den meisten Yoga-Regimen, zu bewältigen.

Darüber hinaus kann der Körper manchmal bestimmte Gliedmaßen blockieren, wie sie von einer bestimmten Kamera aufgenommen werden, und Benutzer können verschiedene Outfits tragen, die Körperformen verdecken und persönliche Merkmale verbergen.

Wenn vorgefertigte Modelle verwendet werden, ist zu beachten, dass ungewöhnliche Körperbewegungen oder ungewöhnliche Kamerawinkel zu Fehlern in der menschlichen Pose-Schätzung führen können. Dieses Problem kann bis zu einem bestimmten Grad durch die Verwendung von synthetischen Daten aus einem 3D-Menschmodell-Render oder durch Feinabstimmung mit Daten, die spezifisch für den betreffenden Bereich sind, gemildert werden.

Die gute Nachricht ist, dass die meisten Schwächen vermieden oder gemildert werden können. Der Schlüssel dazu ist, die richtigen Trainingsdaten und die Modellarchitektur auszuwählen. Darüber hinaus deutet die Tendenz in der Entwicklung der menschlichen Pose-Schätzungstechnologie darauf hin, dass einige der Probleme, mit denen wir derzeit konfrontiert sind, in den kommenden Jahren weniger relevant sein werden.

Das letzte Wort

Die menschliche Pose-Schätzung bietet eine Vielzahl von potenziellen zukünftigen Anwendungen außerhalb des Bereichs von Fitness-Anwendungen und der Verfolgung von menschlichen Bewegungen, von Spielen bis hin zu Animation, erweiterter Realität und Robotik. Dies stellt keine vollständige Liste der Möglichkeiten dar, sondern hebt einige der wahrscheinlichsten Bereiche hervor, in denen die menschliche Pose-Schätzung zu unserem digitalen Landschaftsbild beitragen wird.

Maksym ist darauf bedacht, neue Erkenntnisse und Erfahrungen in Data Science und Machine Learning zu gewinnen. Er ist besonders an Deep-Learning-basierten Technologien und ihrer Anwendung auf Geschäftsanwendungsfälle interessiert.