Gesundheitswesen
KI-Pose-Schätzung in Fitness-Anwendungen

Von Maksym Tatariants, Data Science Engineer bei MobiDev.
Die menschliche Pose-Schätzung bezeichnet eine Technologie – ziemlich neu, aber schnell evolvierend –, die eine bedeutende Rolle in Fitness- und Tanzanwendungen spielt, indem sie es uns ermöglicht, digitale Inhalte über die reale Welt zu legen.
Kurz gesagt, 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 in aktuellen menschlichen Pose-Schätzungssystemen am prominentesten – skelettbasiert, konturbasiert und volumenbasiert.
Skelettbasiertes 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 3-dimensionale als auch für 2-dimensionale menschliche Pose-Schätzung. Bei der 3-dimensionalen Modellierung verwendet die Lösung ein RGB-Bild und findet die X-, Y- und Z-Koordinaten der Gelenke. Bei der 2-dimensionalen Modellierung handelt es sich um 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 3-dimensionalen 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 die 3D-Pose-Schätzung funktioniert
Fitness-Anwendungen verlassen sich in der Regel auf die 3-dimensionale menschliche Pose-Schätzung. Für diese Anwendungen ist die mehr Informationen über die menschliche Pose, desto besser. Mit dieser Technik zeichnet der Benutzer der Anwendung sich selbst auf, während er ein Übungs- oder Trainingsprogramm durchführt. Die Anwendung analysiert dann die Körperbewegungen des Benutzers und bietet Korrekturen für Fehler oder Ungenauigkeiten.
Der typische Ablauf eines solchen Apps folgt diesem Muster:
- Zuerst werden Daten über die Bewegungen des Benutzers gesammelt, während er das Übungsprogramm durchführt.
- 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 in der Regel tiefes maschinelles Lernen, um die Gelenke bei der Schätzung der Pose des Benutzers zu extrahieren. Anschließend werden geometriebasierte Algorithmen verwendet, um die relative Position der erkannten Gelenke zu analysieren. Bei der Verwendung eines dynamischen Videos als Quelldaten kann das System eine Reihe von Frames und nicht nur ein einzelnes Bild verwenden, um seine 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 zur Verwendung der 3D-Pose-Schätzung in Fitness-Anwendungen ist der genaueste Ansatz, zunächst ein Modell zu verwenden, um 2D-Schlüsselpunkte zu erkennen, und diese 2D-Erkennung dann mit einem anderen Modell zu verarbeiten, um 3D-Schlüsselpunkte vorherzusagen.
In der Forschung, die wir kürzlich veröffentlichten, wurde eine einzelne Videoquelle verwendet, und konvolutionale neuronale Netze mit dilatierten temporalen Konvolutionen wurden angewendet, um die 2D- in 3D-Schlüsselpunkte umzuwandeln.
Nach der Analyse der aktuellen Modelle kamen wir zu dem Schluss, dass VideoPose3D die Lösung ist, die am besten auf die Bedürfnisse der meisten künstlichen Intelligenz-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.
Um die genaueste Vorhersage der Position eines aktuellen Gelenks oder Schlüsselpunkts zu ermöglichen, kann VideoPose3D mehrere Frames über eine kurze Zeitsequenz verwenden, um 2D-Pose-Informationen zu generieren.
Um die Genauigkeit der 3D-Pose-Schätzung weiter zu verbessern, kann mehr als eine Kamera verwendet werden, um alternative Blickwinkel des Benutzers zu erfassen, der das gleiche Übungsprogramm durchführt. Beachten Sie jedoch, dass dies eine höhere Rechenleistung und eine spezielle Modellarchitektur erfordert, um mit mehreren Video-Stream-Eingaben umzugehen.
Kürzlich hat Google sein BlazePose-System vorgestellt, ein modellbasiertes System für die Schätzung der menschlichen Pose auf mobilen Geräten, das die Anzahl der analysierten Schlüsselpunkte auf 33 erhöht, eine Superset der COCO-Schlüsselpunkte und zwei andere Topologien – BlazePalm und BlazeFace. Als Ergebnis kann das BlazePose-Modell Pose-Vorhersageergebnisse erzeugen, die mit Handmodellen und Gesichtsmodellen konsistent 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 höchstens ein paar Millisekunden pro Frame für die Pose-Erkennung und -Verfolgung benötigen.
Da die BlazePose-Pipeline (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 recheneffizient 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 einer Person zu lokalisieren oder ihre Abwesenheit zu bestimmen. Nachdem die Person erkannt wurde, kann das Pose-Erkennungsmodul den lokalisierten 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 gefunden, dieses Problem zu umgehen und es in anderen Schlüsselpunkterkennungsmodulen wie FaceMesh und MediaPipe Hand zu nutzen.
Die Idee ist, dass ein Objekterkennungsmodell (Gesichtserkennung im Falle von BlazePose) nur verwendet werden kann, um die Pose-Verfolgung im ersten Frame zu starten, während die nachfolgende Verfolgung der Person ausschließlich mit den Pose-Vorhersagen nach einer Pose-Ausrichtung durchgeführt werden kann, deren Parameter mit dem Pose-Erkennungsmodell vorhergesagt werden.
Das Gesicht produziert das stärkste Signal für die Position des Rumpfes für das neuronale Netzwerk, da es eine relativ geringe Varianz im Aussehen und einen hohen Kontrast in seinen Merkmalen aufweist. Folglich kann ein schnelles, geringes Überhead-System für die Pose-Erkennung durch eine Reihe von gerechtfertigten Annahmen geschaffen werden, die auf der Idee basieren, dass der menschliche Kopf in jedem persönlichen Anwendungsfall lokalisierbar ist.
Die Herausforderungen der menschlichen Pose-Schätzung überwinden
Die Verwendung der Pose-Schätzung in Fitness-Apps stellt die Herausforderung dar, die enorme Vielfalt an menschlichen Posen zu bewältigen, zum Beispiel die Hunderte von Asanas in den meisten Yoga-Regimen.
Darüber hinaus kann der Körper manchmal bestimmte Gliedmaßen blockieren, wie sie von einer bestimmten Kamera aufgenommen werden, Benutzer können verschiedene Outfits tragen, die Körperformen und persönliche Aussehen verdecken.
Bei der Verwendung von vorab trainierten Modellen 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-Menschenkörper-Modell-Render oder durch Feinabstimmung mit Daten, die spezifisch für den betreffenden Bereich sind, gemildert werden.
Die gute Nachricht ist, dass wir die meisten Schwächen vermeiden oder mildern 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-Apps und der Verfolgung von Körperbewegungen, von Spielen bis hin zu Animation, erweiterter Realität und Robotik. Das 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 Landschaft beitragen wird.
















