Retargeting in tempo reale da webcam a VRM
Un browser può pilotare un avatar 3D usando solo una webcam?
Ho testato MediaPipe Holistic per vedere se fosse in grado di stimare i movimenti del corpo, del viso e delle mani per controllare un avatar VRM 1.0 in tempo reale. Ho eseguito questo test su un Apple M1 Max utilizzando CPU e WASM.
I risultati dimostrano che una webcam standard può pilotare un avatar 3D senza l'ausilio di costosi dispositivi di motion capture.
Risultati del test: • Hardware: Apple M1 Max • Input: stream webcam 1280x720 • Velocità effettiva: 17,3 FPS • Tempo medio di inferenza: 49,17 ms • Successo: Tutti i 141 frame della posa rilevati hanno aggiornato lo scheletro VRM
Come funziona: Il sistema utilizza una pipeline multi-stadio per tracciare 553 punti:
- 33 punti per la posa del corpo
- 478 punti per la mesh del viso (inclusi gli iridi)
- 21 punti per ogni mano
Il processo segue questi passaggi:
- MediaPipe rileva i landmark dalla webcam
- Le coordinate vengono convertite nello spazio Three.js
- I dati vengono mappati su 34 ossa ed espressioni VRM
- Algoritmi di smoothing riducono il jitter interpolando i movimenti
Il retargeting funziona allineando la direzione tra due landmark con la direzione dell'osso VRM. Ad esempio, mappa la spalla al gomito per impostare la rotazione del braccio. I coefficienti facciali vengono mappati direttamente sulle espressioni dell'avatar, come il battito delle ciglia o l'apertura della mascella.
Limitazioni:
- Velocità: 17,3 FPS sono sufficienti per le demo, ma non abbastanza fluidi per un motion capture professionale a 60 FPS.
- Rotazione: Si tratta di un'approssimazione direzionale. Non risolve la torsione esatta di avambracci o caviglie.
- Complessità: A causa della breve durata del test, non è stata dimostrata la stabilità del tracciamento simultaneo di viso e di entrambe le mani.
Questa configurazione offre un modo leggero per creare demo di avatar e interfacce gestuali direttamente nel browser.
