ciot Estimarea poziției AI în aplicația de fitness - Unite.AI
Conectează-te cu noi

Farmaceutice

Estimarea poziției AI în aplicația de fitness

mm

Publicat

 on

De Maksym Tatariants, inginer în știința datelor la MobiDev.

Estimarea poziției umane se referă la o tehnologie – destul de nouă, dar care evoluează rapid – care joacă un rol important în aplicațiile de fitness și dans, permițându-ne să plasăm conținut digital în lumea reală.

Pe scurt, conceptul de estimare a poziției umane este o tehnologie bazată pe computer viziune capabilă să detecteze și să proceseze postura umană. Cea mai importantă și centrală parte a acestei tehnologii este modelarea corpului uman. Trei modele corporale sunt cele mai proeminente în sistemele actuale de estimare a poziției umane - bazate pe schelet, pe contur și pe volum.

Model bazat pe schelet

Acest model este alcătuit dintr-un set de articulații (puncte cheie), cum ar fi genunchii, gleznele, încheieturile, coatele, umerii și orientarea membrelor corpului. Acest model este remarcabil pentru flexibilitatea sa și, ca atare, este potrivit atât pentru estimarea poziției umane tridimensionale, cât și bidimensionale. Cu modelarea tridimensională, soluția folosește o imagine RGB și găsește coordonatele X, Y și Z ale articulațiilor. Cu modelarea bidimensională, este aceeași analiză a unei imagini RGB, dar folosind coordonatele X și Y.

Model bazat pe contur

Acest model folosește contururile trunchiului și ale membrelor corpului, precum și lățimea lor aspră. Aici, soluția preia silueta cadrului corpului și redă părțile corpului ca dreptunghiuri și limite în cadrul respectivului cadru.

Model bazat pe volum

Acest model folosește în general o serie de scanări tridimensionale pentru a capta forma corpului și o transformă într-un cadru de forme și rețele geometrice. Aceste forme creează o serie 3D de ipostaze și reprezentări ale corpului.

Cum funcționează estimarea poziției umane 3D

Aplicațiile de fitness tind să se bazeze pe estimarea postului uman tridimensional. Pentru aceste aplicații, cu cât mai multe informații despre poziția umană, cu atât mai bine. Cu această tehnică, utilizatorul aplicației se va înregistra participând la un exercițiu sau o rutină de antrenament. Aplicația va analiza apoi mișcările corpului utilizatorului, oferind corecții pentru greșeli sau inexactități.

Acest tip de diagramă a aplicației urmează de obicei acest model:

  • Mai întâi, strângeți date despre mișcările utilizatorului în timp ce efectuează exercițiul.
  • Apoi, determinați cât de corecte sau incorecte au fost mișcările utilizatorului.
  • În cele din urmă, arătați utilizatorului prin interfață ce greșeli ar fi putut să fi făcut.

În prezent, standardul în tehnologia ipostazei umane este Topologie COCO. Topologia COCO este alcătuită din 17 repere de-a lungul corpului, de la față la brațe până la picioare. Rețineți că COCO nu este singurul cadru de poziție a corpului uman, ci doar cel mai des folosit.

Acest tip de proces utilizează de obicei tehnologia de învățare automată profundă pentru extragerea articulațiilor în estimarea poziției utilizatorului. Apoi folosește algoritmi bazați pe geometrie pentru a înțelege ceea ce a găsit (analiza pozițiile relative ale articulațiilor detectate). În timp ce folosește un videoclip dinamic ca sursă de date, sistemul poate folosi o serie de cadre, nu doar o singură imagine, pentru a-și surprinde punctele cheie. Rezultatul este o redare mult mai precisă a mișcărilor reale ale utilizatorului, deoarece sistemul poate folosi informațiile din cadrele adiacente pentru a rezolva orice incertitudine cu privire la poziția corpului uman în cadrul curent.

Dintre tehnicile actuale de utilizare a estimării poziției 3D în aplicațiile de fitness, cea mai precisă abordare este aplicarea mai întâi a unui model pentru a detecta punctele cheie 2D și, ulterior, procesarea detectării 2D cu un alt model pentru a le converti în predicții de puncte cheie 3D. 

În cercetare am postat recent, a fost folosită o singură sursă video, cu rețele neuronale convoluționale cu convoluții temporale dilatate aplicate pentru a efectua conversia punctului cheie 2D -> 3D.

După ce am analizat modelele existente în prezent, am stabilit că VideoPose3D este soluția cel mai bine adaptată nevoilor majorității aplicațiilor de fitness bazate pe inteligență artificială. Intrarea care utilizează acest sistem ar trebui să permită detectarea unui set 2D de puncte cheie, unde un model, pregătit în prealabil pe setul de date COCO 2017, este aplicat ca a detector 2D. 

Pentru o predicție cât mai precisă a poziției unei articulații sau a unui punct cheie curent, VideoPose3D poate folosi mai multe cadre într-o secvență scurtă de timp pentru a genera informații despre poziție 2D. 

Pentru a spori și mai mult acuratețea estimării poziția 3D, mai multe camere pot aduna puncte de vedere alternative ale utilizatorului care efectuează același exercițiu sau rutină. Rețineți, totuși, că necesită o putere de procesare mai mare, precum și o arhitectură de model specializată pentru a face față mai multor intrări de flux video.

Recent, Google dezvaluit sistemul lor BlazePose, un model orientat pe dispozitivele mobile pentru estimarea poziției umane prin creșterea numărului de puncte cheie analizate la 33, un superset al setului de puncte cheie COCO și alte două topologii – BlazePalm și BlazeFace. Ca rezultat, modelul BlazePose poate produce rezultate de predicție a poziției în concordanță cu modelele de mâini și modelele feței prin articularea semanticii corpului.

Fiecare componentă dintr-un sistem de estimare a poziției umane bazat pe învățarea automată trebuie să fie rapidă, luând maximum câteva milisecunde pe cadru pentru modelele de detectare și urmărire a poziției. 

Datorită faptului că conducta BlazePose (care include componente de estimare și urmărire a poziției) trebuie să funcționeze pe o varietate de dispozitive mobile în timp real, fiecare parte individuală a conductei este proiectată să fie foarte eficientă din punct de vedere computațional și să ruleze la 200-1000 FPS. .

Estimarea și urmărirea poziționării în videoclip în cazul în care nu se știe dacă și unde este prezentă persoana se face de obicei în două etape. 

În prima etapă, se rulează un model de detectare a obiectelor pentru a localiza prezența unui om sau pentru a identifica absența acestuia. După ce persoana a fost detectată, modulul de estimare a poziției poate procesa zona localizată care conține persoana și poate prezice poziția punctelor cheie.

Un dezavantaj al acestei configurații este că necesită atât module de detectare a obiectelor, cât și de estimare a poziției, pentru a rula pentru fiecare cadru care consumă resurse de calcul suplimentare. Cu toate acestea, autorii BlazePose au conceput o modalitate inteligentă de a rezolva această problemă și de a o utiliza eficient în alte module de detectare a punctelor cheie, cum ar fi FaceMesh și Mâna MediaPipe.

Ideea este că un modul de detectare a obiectelor (detectorul de fețe în cazul lui BlazePose) poate fi folosit doar pentru a porni urmărirea pozitiei în primul cadru, în timp ce urmărirea ulterioară a persoanei se poate face folosind exclusiv predicțiile de poziția după o anumită aliniere a poziției, parametrii pentru care sunt prezisi folosind modelul de estimare a pozitiei.

Fața produce cel mai puternic semnal cu privire la poziția trunchiului pentru rețeaua neuronală, ca urmare a variației relativ mici a aspectului și a contrastului ridicat al trăsăturilor sale. În consecință, este posibil să se creeze un sistem rapid, cu costuri reduse, pentru detectarea pozițiilor printr-o serie de ipoteze justificabile bazate pe ideea că capul uman va fi localizabil în fiecare caz de utilizare personală.

Depășirea provocărilor de estimare a poziției umane

Folosirea estimarii pozițiilor în aplicațiile de fitness se confruntă cu provocarea volumului imens al gamei de poziții umane, de exemplu, sutele de asane din majoritatea regimurilor de yoga. 

În plus, corpul va bloca uneori anumite membre, așa cum sunt surprinse de orice cameră dată, utilizatorii pot purta ținute variate care ascund trăsăturile corpului și aspectul personal.

În timp ce utilizați orice model pre-antrenat, rețineți că mișcările neobișnuite ale corpului sau unghiurile ciudate ale camerei pot duce la erori în estimarea poziției umane. Putem atenua această problemă într-o anumită măsură prin utilizarea datelor sintetice dintr-o redare a unui model de corp uman 3D sau prin reglarea fină cu date specifice domeniului în cauză.

Vestea bună este că putem evita sau atenua majoritatea punctelor slabe. Cheia pentru a face acest lucru este să alegeți datele de antrenament și arhitectura modelului potrivite. În plus, tendința de dezvoltare în domeniul tehnologiei de estimare a poziției umane sugerează că unele dintre problemele cu care ne confruntăm acum vor fi mai puțin relevante în următorii ani.

Cuvântul final

Estimarea poziției umane deține o varietate de potențiale utilizări viitoare în afara domeniului aplicațiilor de fitness și a urmăririi mișcărilor umane, de la jocuri la animație, la Realitatea Augmentată și la robotică. Aceasta nu reprezintă o listă completă a posibilităților, dar evidențiază unele dintre cele mai probabile domenii în care estimarea poziției umane va contribui la peisajul nostru digital.

Maksym este dornic să obțină noi perspective și experiență în Data Science și Machine Learning. El este interesat în special de tehnologiile bazate pe Deep Learning și de aplicarea acestora în cazuri de utilizare în afaceri.