Sundhedsvæsen

AI Pose Estimation i Fitness Applikationer

mm
Føj Unite.AI til dine foretrukne kilder på Google

Af Maksym Tatariants, Data Science Engineer hos MobiDev.

Menneskeposeestimation henviser til en teknologi – ret ny, men under hurtig udvikling – der spiller en betydelig rol i fitness- og danseapplikationer, og som tillader os at placere digitalt indhold over den virkelige verden.

Som en kort beskrivelse er menneskeposeestimation en computerbaseret teknologi, der kan detektere og bearbejde menneskets kropsstilling. Den vigtigste og centrale del af denne teknologi er kropsmodellering. Tre kropsmodeller er mest fremtrædende i nuværende menneskeposeestimationssystemer – skeletbaseret, konturbaseret og volumenbaseret.

Skeletbaseret Model

Denne model består af en samling led (nøglepunkter), såsom knæ, ankler, handleder, albuer, skuldre og kroppens lemmer. Denne model er bemærkelsesværdig for sin fleksibilitet og er derfor egnet til både 3-dimensionel og 2-dimensionel menneskeposeestimation. Med 3-dimensionel modellering bruger løsningen en RGB-billede og finder ledernes X, Y og Z-koordinater. Med 2-dimensionel modellering er det den samme analyse af et RGB-billede, men med X- og Y-koordinater.

Konturbaseret Model

Denne model anvender konturerne af torsoen og lemmerne samt deres omtrentlige bredde. Her tager løsningen kroppens silhuet og gengiver kropsdele som rektangler og grænser inden for dette rammeværk.

Volumenbaseret Model

Denne model anvender generelt en række 3-dimensionelle scanninger til at fange kroppens form og omdanner den til et rammeværk af former og geometriske net.

Hvordan 3D Menneskeposeestimation Virker

Fitnessapplikationer tenderer til at afhænge af 3-dimensionel menneskeposeestimation. For disse apps er mere information om menneskeposestillingen desto bedre. Med denne teknik vil appens bruger optage sig selv, mens de deltager i en øvelse eller træningsrutine. Appen vil derefter analysere brugerens kropsbevægelser og tilbyde korrektioner for fejl eller uøjeligheder.

Denne types apps flowchart følger normalt dette mønster:

  • Først indsamles data om brugerens bevægelser, mens de udfører øvelsen.
  • Derefter bestemmes, hvor korrekt eller forkert brugerens bevægelser var.
  • Til sidst vises brugeren via grænsefladen, hvilke fejl de måtte have begået.

I øjeblikket er standarden i menneskepose-teknologi COCO-topologi. COCO-topologien består af 17 landemærker på kroppen, fra ansigtet til armene til benene. Bemærk, at COCO ikke er den eneste menneskekropsstilling-ramme, men blot den mest almindeligt brugte.

Denne proces anvender normalt dyb maskinlæringsteknologi til at udtrække led fra posestimation. Den anvender derefter geometri-baserede algoritmer til at give mening til, hvad den har fundet (analyserer relative positioner af de detekterede led). Mens den anvender en dynamisk video som kilde-data, kan systemet anvende en række billeder, ikke blot ét enkelt billede, til at fange sine nøglepunkter. Resultatet er en langt mere præcis gengivelse af brugerens virkelige bevægelser, da systemet kan anvende information fra de tilstødende billeder til at løse eventuelle usikkerheder vedrørende kroppens position i det nuværende billede.

Af de nuværende teknikker til at anvende 3D-poseestimation i fitnessapplikationer er den mest præcise tilgang at anvende en model til at detektere 2D-nøglepunkter og derefter bearbejde 2D-detectionen med en anden model til at omdanne dem til 3D-nøglepunktsforudsigelser.

I forskningen, vi offentliggjorde for nylig, blev en enkelt video-kilde anvendt, med convolutionelle neurale netværk med dilated temporale konvolutioner anvendt til at udføre 2D- > 3D-nøglepunktsomdannelse.

Efter at have analyseret de nuværende modeller, fandt vi, at VideoPose3D er den løsning, der bedst er tilpasset behovene for de fleste AI-drevne fitnessapplikationer. Inputtet ved hjælp af dette system bør tillade en 2D-sæt af nøglepunkter at blive detekteret, hvor en model, forudtrænet på COCO 2017-datasættet, anvendes som 2D-detektor.

Til den mest præcise forudsigelse af en nuværende led eller nøglepunkts position kan VideoPose3D anvende flere billeder over en kort sekvens af tid til at generere 2D-poseinformation.

For yderligere at forbedre nøjagtigheden af 3D-poseestimation kan mere end en kamera indsamle alternative synsvinkler af brugeren, der udfører den samme øvelse eller rutine. Bemærk dog, at det kræver større proceskraft samt specialiseret modelarkitektur til at håndtere multiple videostrøm-indgange.

For nylig præsenterede Google (GOOGL ) deres BlazePose-system, en mobilenhedsorienteret model til menneskeposeestimation ved at øge antallet af nøglepunkter, der analyseres til 33, en superset af COCO-nøglepunktsættet og to andre topologier – BlazePalm og BlazeFace. Som resultat kan BlazePose-modellen producere poseforudsigelsesresultater, der er konsistente med håndmodeller og ansigtsmodeller ved at artikulere kropssemantik.

Hver komponent i et maskinlæring-baseret menneskeposeestimationssystem skal være hurtig, med en maksimum på et par millisekunder per billede til pose-detection og sporing-modeller.

På grund af, at BlazePose-pipeline (der inkluderer pose-estimation og sporing-komponenter) skal køre på en række mobile enheder i realtid, er hver enkelt del af pipeline designet til at være meget beregnings-effektiv og køre med 200-1000 FPS.

Pose-estimation og sporing i videoen, hvor det ikke er kendt, om og hvor personen er til stede, udføres normalt i to stadier.

I det første stadium køres et objekt-detection-model til at lokalisere tilstedeværelsen af en person eller til at identificere deres fravær. Efter personen er blevet detekteret, kan pose-estimationsmodulen bearbejde den lokaliserede område, der indeholder personen, og forudsige positionen af nøglepunkterne.

En ulempe ved denne opsætning er, at det kræver både objekt-detection og pose-estimationsmoduler til at køre for hvert billede, hvilket forbruger ekstra beregningsressourcer. Forfatterne af BlazePose har dog udviklet en clever måde til at komme rundt om dette problem og effektivt udnytte det i andre nøglepunkts-detection-moduler, såsom FaceMesh og MediaPipe Hand.

Idéen er, at et objekt-detection-modul (ansigts-detektor i tilfældet af BlazePose) kan anvendes kun til at starte pose-sporet i det første billede, mens efterfølgende sporing af personen kan udføres ved eksklusivt at anvende pose-forudsigelser efter nogle pose-justeringer, parametre for hvilke forudsiges ved hjælp af pose-estimationsmodellen.

Ansigtet producerer det stærkeste signal om torsoens position for neurale netværk, som resultat af den relativt lille variation i udseende og høj kontrast i dets funktioner. Derfor er det muligt at oprette et hurtigt, lav-overhead-system til pose-detection gennem en række berettigede antagelser baseret på, at menneskehovedet vil være lokaliserbart i hver personlig brugs-situation.

At Overvinde Udfordringerne ved Menneskeposeestimation

At anvende pose-estimation i fitness-applikationer står over for udfordringen med den enorme mængde af menneskeposer, f.eks. de hundredvis af asanas i de fleste yogaprogrammer.

Desuden kan kroppen af og til blokere visse lemmer, som fanget af en given kamera, brugere kan have forskellige påklædning, der skjuler kropsfunktioner og personlige udseender.

Når man anvender forudtrænede modeller, skal man bemærke, at usædvanlige kropsbevægelser eller underlige kamera-vinkler kan føre til fejl i menneskeposeestimation. Vi kan mildne dette problem til en vis grad ved at anvende syntetisk data fra en 3D-menneskekropsmodel-gengivelse eller ved at finjustere med data specifikke for det pågældende domæne.

Det gode nyheds er, at vi kan undgå eller mildne de fleste svagheder. Nøglen til at gøre det er at vælge det rette træningsdata og modelarkitektur. Desuden tyder tendensen i udviklingen af menneskeposeestimationsteknologien på, at nogle af de problemer, vi står over for i øjeblikket, vil være mindre relevante i de kommende år.

Det Endelige Ord

Menneskeposeestimation har en række potentielle fremtidige anvendelser uden for området for fitness-applikationer og sporing af menneskelige bevægelser, fra gaming til animation til Forstærket Virkelighed til robotteknologi. Dette repræsenterer ikke en fuldstændig liste over mulighederne, men fremhæver nogle af de mest sandsynlige områder, hvor menneskeposeestimation vil bidrage til vores digitale landskab.

Maksym er ivrig efter at få nye indsigt og erfaring inden for Data Science og Machine Learning. Han er særligt interesseret i Deep Learning-baserede teknologier og deres anvendelse i forretningsrelaterede brugsområder.