$$\rightleftharpoonup{xx}$$
$$\longleftharp{xx}$$,
$$\longrightharp{xx}$$,
Questo studio è stato condotto come serie di casi utilizzando risultati rappresentativi di quattro bambini per dimostrare la fattibilità del protocollo piuttosto che inferenze statistiche. A questo studio hanno partecipato due bambini con sviluppo tipico (maschio di 4 anni, 100 cm, 14,5 kg; maschio di 10 anni, 144 cm, 40,8 kg) e due bambini con paralisi cerebrale, Gross Motor Function Classification System III (femmina di 4 anni, 93 cm, 13,8 kg; maschio di 4 anni, 102 cm, 16,7 kg). Genitori/tutori legali e figli hanno fornito consenso/assenso informato prima della partecipazione, in conformità con il nostro protocollo di studio approvato dall'Institutional Review Board (IRB-FY2024-33).
NOTA: Sebbene questo protocollo descriva procedure sia per sistemi di motion capture basati su marcatori 3D che per quelli senza marcatori 2D, il focus di questo studio è sull'implementazione dell'approccio senza marcatori 2D, che rappresenta l'applicazione clinica e pratica centrale di questo lavoro. L'implementazione principale dell'attuale protocollo richiede un sistema di motion capture basato su marker (minimo 8 fotocamere) per l'acquisizione dei dati cinematici 3D, e una singola camera RGB (risoluzione minima 1920 × 1080 pixel, 50 Hz) posizionata perpendicolarmente al piano sagittale per la cattura 2D senza marker. Il metodo è adatto ad ambienti clinici o di laboratorio controllati con un'illuminazione adeguata (> 500 lux) e il minimo disordine di sfondo. Per migliorare la robustezza in ambienti non ideali, il toolbox vailá integra strumenti di pre-elaborazione (ad esempio, mascheramento drawbox, ritaglio o ridimensionamento video) che permettono agli utenti di isolare il partecipante da distrazioni di sfondo o di regolare l'inquadratura subottimale della telecamera. Le limitazioni principali includono una riduzione della precisione per l'approccio a camera singola, senza marcatori, per bambini che mostrano movimenti significativi fuori piano, poiché questo approccio non può catturare informazioni di profondità o movimenti al di fuori del campo visivo della telecamera. Gli utenti dovrebbero assicurarsi che i partecipanti rimangano entro il volume di cattura predefinito e mantenere l'allineamento del piano sagittale durante l'esecuzione del compito per ottimizzare le prestazioni di tracciamento senza marcatori.
1. Controlli pre-test
- Accendi e riscalda il sistema di telecamera a infrarossi per la captura del movimento e la videocamera. Il sistema di cattura del movimento a infrarossi richiede circa 30-60 minuti di riscaldamento per raggiungere la stabilizzazione termica prima della calibrazione e della raccolta dati. Verifica la frequenza di campionamento a 100Hz (fotocamere a infrarossi per sistemi basati su marker) e 50Hz (videocamera per sistema senza marker).
- Trasparire e/o coprire gli oggetti riflettenti dal volume di cattura.
2. Posizionamento della telecamera
- Sistema basato su marcatori (sistema di telecamera 3D)
- Telecamere posizionate a circa 1,5-2,5 m dal centro dell'area di movimento, montate ad altezze che variano da 0,5 a 2,5 m. Assicurati che le telecamere siano distribuite uniformemente attorno al volume di cattura per ottimizzare la visibilità dei marcatori e minimizzare l'occlusione durante il compito dal sedere allo stand. Alterare le elevazioni della posizione della telecamera per migliorare la precisione della triangolazione e ridurre le interferenze della linea di vista.
- Ogni punto all'interno del volume target (dove il figlio svolgerà il compito) deve essere visibile ad almeno due telecamere in ogni momento, seguendo le raccomandazioni standard per una cattura ottimale dei dati 3D. Definire il volume di cattura in base all'antropometria dei partecipanti pediatrici e al compito valutato.
NOTA: Lo spazio di lavoro era centrato a circa 0,80 m dal pavimento.
- Utilizzare gli strumenti software del sistema basato su marker per affinare le tre principali impostazioni ottiche (zoom, diaframma, messa a fuoco) al fine di garantire bassi residui di calibrazione e un'alta coerenza nel tracciamento dei marker tra le prove.
- Sistema senza marcatori (fotocamera 2D)
- Posizionare la videocamera lateralmente a 3,0 m dal partecipante (o più vicino, quando possibile, purché l'intero corpo del soggetto sia visibile durante tutto il compito, dalla posizione a quello in piedi), centrata all'altezza del bacino quando il partecipante è in piedi, ortogonale al piano sagittale.
- Livellare l'asse ottico (nessun roll) e allineare la linea centrale dell'immagine con la regione centrale dell'articolazione dell'anca.
- Configura la fotocamera con parametri di imaging fissi per tutte le registrazioni.
- Imposta la regione di acquisizione su un'area di interesse di 1920 × 1200 px per definire la risoluzione effettiva. Usa un obiettivo focale da 20 mm e mantieni costante l'apertura (sufficiente contrasto tra ambiente e partecipante) per tutto l'esperimento.
- Imposta il frame rate a 50 Hz e fissa la durata dell'otturatore a 5 ms. Applicare le seguenti impostazioni hardware e non modificarle durante la raccolta dati: guadagno 9,998, gamma 0,4, livello nero 0, saturazione 1.
- Disabilita tutte le regolazioni automatiche dell'esposizione e del bilanciamento del bianco per prevenire la deriva temporale nell'aspetto dell'immagine.
NOTA: Per regolare la messa a fuoco, si può usare un cartello con una breve frase scritta in carattere Calibri, stile grassetto, dimensione 48, posizionata dove il partecipante eseguirà il compito. Nel campo visivo della telecamera, le lettere dovrebbero essere nitide, senza sfocatura visibile.
- Quando si utilizza qualsiasi obiettivo con distorsione evidente, preparare un Charuco/scacchiera18,19 per la calibrazione/distorsione (opzionale per compiti strettamente sagittali e stazionari).
NOTA: Sia i sistemi di videocamera basati su marcatori che quelli senza marcatori utilizzati sono mostrati nella Figura 1.

Figura 1: Primo piano dei due sistemi di telecamere utilizzati in questo studio. È stata utilizzata la telecamera a infrarossi del sistema cinematico 3D (a sinistra), in cui 12 telecamere componevano il sistema per l'approccio basato su marker, e una videocamera (a destra) per l'approccio senza marker. Clicca qui per visualizzare una versione più grande di questa figura.
3. Sincronizzazione
NOTA: Questo passaggio è necessario solo quando si usano sistemi diversi contemporaneamente. La sincronizzazione tra sistemi non è necessaria quando si utilizza un solo sistema cinematico (2D o 3D).
- Collega il LockLab (o l'unità equivalente di controllo/sincronizzazione) per inviare un trigger logico transistor-transistor (TTL) a entrambi i sistemi all'inizio di ogni prova.
- Se i trigger hardware non sono disponibili, utilizzare un lampo visibile a diodo a emissione luminosa (LED) (metodo preferibile) o un battimento udibile catturato da entrambi i sistemi per un allineamento successivo.
4. Calibrazione del volume di cattura (sistema basato su marker)
- Ispeziona visivamente il campo visivo delle telecamere (sia a infrarossi che video) per rimuovere oggetti inutili da ciascuna visuale. Nel software del sistema basato su marker, si mascherano oggetti riflettenti che non potevano essere rimossi dalla visuale della telecamera (ad esempio, altre fotocamere).
- Esegui la calibrazione della bacchetta dove verrà svolto il compito. Sposta la bacchetta lungo tutto il volume di cattura per assicurarti che tutto lo spazio sia coperto. Accettare la calibrazione solo se la precisione spaziale ≤ 1 mm (residuo medio).
NOTA: Verifica che almeno tre telecamere visualizzino contemporaneamente la barra di calibrazione durante questa procedura. Muovi la bacchetta attraverso il volume di cattura a una velocità che approssimi il movimento previsto nel compito sperimentale: per compiti ad alta velocità, muovi rapidamente la bacchetta; Per movimenti più lenti, muovi la bacchetta più lentamente. Al termine del passaggio di calibrazione, verifica gli indicatori software per eventuali telecamere che non hanno catturato viste sufficienti della bacchetta ed esegui movimenti mirati aggiuntivi all'interno dei campi visivi di quelle telecamere prima di concludere la calibrazione. Gli errori residui dopo la calibrazione della bacchetta si collocano tipicamente tra 0,3 e 0,8 mm quando il passaggio della bacchetta è fluido, il volume di cattura è illuminato uniformemente e tutte le fotocamere hanno una visuale libera.
- Imposta l'origine del volume posizionando la barra di calibrazione nella posizione designata all'interno dello spazio di test definito. Definisci il piano del pavimento secondo le istruzioni del produttore.
5. Posizionamento dei marcatori (sistema basato su marcatori)
- Posizionare i marcatori retroriflettenti secondo il modello Plug-inGait 20, 21, 22 (Figura 2) realizzato da un esaminatore qualificato.
- Verifica la visibilità dei marcatori bilaterali di anca, ginocchio e tronco durante un breve movimento di prova prima di raccogliere la prova statica (richiesta per i sistemi basati su marcatori 3D).

Figura 2: Modello di andatura plug-in adattato per il presente studio. Il set standard di marcatori è stato applicato per definire arto inferiore, bacino, tronco e segmenti della testa. I marcatori degli arti superiori sono stati rimossi per concentrarsi esclusivamente sulla cinematica della parte inferiore del corpo e del tronco. Questa adattamento preserva l'integrità del modello originale Plug-in Gait full-body escludendo il movimento delle braccia dall'analisi. Clicca qui per visualizzare una versione più grande di questa figura.
6. Presidente e ambiente
- Usa una sedia senza braccioli e regola l'altezza del sedile in modo che gli angoli di fianchi e ginocchia siano ~90°, con i piedi piatti sul pavimento. Annota l'altezza del sedile (cm) per ogni partecipante.
- Fornire un'illuminazione uniforme; Evita la retroilluminazione e le occlusioni nella vista sagittale. Assicurati uno sfondo uniforme e ad alto contrasto.
7. Istruzione e sicurezza dei partecipanti
- Confermare che nessuna informazione identificabile sia inclusa nei file di registrazione (solo codici alfanumerici non identificabili per ogni partecipante).
- Per le prove dal sedere alla posizione in piedi, assicurati che i partecipanti siano consapevoli delle istruzioni e del protocollo corretti.
- Istrui i partecipanti in sviluppo tipico (TD) a tenere le mani sui fianchi.
- Per i bambini con paralisi cerebrale (GMFCS III), fornire supporto manuale secondo necessità per ottenere una posizione eretta senza compromettere la sicurezza.
NOTA: Sebbene i pazienti pediatrici possano richiedere supporto manuale per garantire sicurezza e completamento dei compiti, bisogna prestare attenzione a minimizzare l'occlusione di segmenti o marcatori corporei, poiché ciò può compromettere la qualità dei dati.
- Indica il movimento verbalmente ("su") e consente una velocità confortevole auto-scelta durante le prove da seduto a piedi.
8. Acquisizione sperimentale
- Prima di catturare le prove dinamiche, si cattura una prova di calibrazione statica con il partecipante in posizione neutra, piedi larghi alle spalle e braccia a 90° dall'abduzione.
- Assicurarsi che tutti i marcatori siano visibili ad almeno due telecamere; Verifica nel software di acquisizione del sistema basato sui marker che ≥ il 95% dei marker sia rilevato su tutte le telecamere. Record per 2-3 s. Un fotogramma prospettico 3D deve avere tutti i marker.
- Nel software del sistema basato su marker, applica il modello statico Plug-in Gait per definire i centri congiunti e i sistemi di coordinate di segmento. Verifica il corretto adattamento del modello ispezionando la visualizzazione 3D dello scheletro e confermando posizioni anatomicamente plausibili dei centri articolari.
NOTA: Questa prova statica fornisce i parametri del modello biomeccanico necessari per la successiva elaborazione dinamica 3D delle prove. In questo passaggio, sarà necessario inserire le misure antropometriche del partecipante (ad esempio, peso, altezza, lunghezza delle gambe, ecc.) nel software del sistema basato sui marker. Quando è necessario un supporto manuale per i pazienti pediatrici durante la sperimentazione statica, è necessario fare attenzione a evitare l'occlusione dei marcatori, che può compromettere la qualità dei dati.
- Registra tre prove dal sedere in piedi, 23 per partecipante. Il periodo di riposo tra una prova e l'altra può essere necessario per ogni partecipante, poiché non è un compito fisicamente impegnativo.
- Utilizzare una convenzione standardizzata di denominazione file che includa gruppo (ad esempio, TD, CP), ID alfanumerico del partecipante e numero di studio.
- Nel software del sistema basato sui marcatori, ricostruisci le traiettorie dei marcatori utilizzando il sistema di telecamera calibrato.
- Etichetta ogni marcatore secondo la nomenclatura del set di marcatori Plug-in Gai. Usa il riempimento automatico dei gap (dimensione massima dello spazio: 10 fotogrammi) per brevi occlusioni.
- Verifica l'accuratezza dell'etichettatura ispezionando visivamente lo scheletro in prospettiva 3D. Una volta che tutti i marcatori sono correttamente etichettati e le traiettorie sono continue, esporta la prova come file .c3d per l'analisi nella cassetta degli attrezzi vailá .
- Salva i dati ottici come .c3d e i fotogrammi video o trasmetti in streaming come file compressi lossless o ad alto bitrate.
9. Elaborazione dei dati
NOTA: La cassetta degli attrezzi vailá (v0.10.21)24 è multipiattaforma (Windows, macOS, Linux) e richiede Python 3.12 o versioni successive. I moduli di analisi senza marker (ad esempio, MediaPipe25) sono ottimizzati per funzionare in modo efficiente su CPU standard, garantendo l'accessibilità in ambienti clinici senza hardware specializzato. Una GPU abilitata a CUDA è opzionale e utilizzata solo se l'utente seleziona motori alternativi ad alta velocità (ad esempio, YOLO-Pose) per un'elaborazione più veloce. Per comandi di esecuzione dettagliati, guide passo dopo passo e documentazione completa, gli utenti sono indirizzati alle risorse online della cassetta degli attrezzi e ai file di aiuto integrati, disponibili su: https://github.com/vaila-multimodaltoolbox/vaila/tree/main/docs/modules/markerless-analysis.
- Approccio basato su marker: Nel software del sistema basato su marker, si elaborano le prove statiche e dinamiche. Applicare il modello Dynamic Plug-in Gait alle traiettorie dei marcatori etichettate (vedi passo 7.4) per calcolare la serie temporale dell'angolo di giunzione.
- Esporta i dati della sperimentazione elaborati come file .c3d. Assicurarsi che le serie temporali calcolate per l'angolo articolare (ad esempio, angoli di anca, ginocchia, caviglia) siano incluse nell'esportazione.
- Importa il file .c3d elaborato nella cassetta degli attrezzi vailá usando la funzione vaila.load_c3d(). La cassetta degli attrezzi estrae automaticamente i dati precalcolati delle serie temporali dell'angolo del giunto dal file.
- Applicare il filtro passa-bassoButterworth di 4 ordini zero (cutoff a 6 Hz) ai dati dell'angolo giunto utilizzando le funzioni di filtraggio integrate (come descritto nel passo 9.2.4 sotto) per garantire un'elaborazione coerente con i dati senza marcatore.
- Analisi successive (ad esempio, generazione di ciclogrammi, calcolo delle metriche di coordinamento) vengono poi eseguite all'interno del vailá.
- Approccio senza marker: modulo di stima della pose Load MediaPipe (v0.10.21) all'interno di vailá. Imposta i seguenti parametri: static_image_mode = Falso, model_complexity = 1-2 (usa il livello 2 quando le risorse GPU/CPU permettono maggiore accuratezza), smooth_landmarks = Vero, min_detection_confidence = 0,6, min_tracking_confidence = 0,6.
NOTA: Qui possono essere utilizzati framework alternativi per la stima della posa, come OpenPose.
- Processa ogni fotogramma video per estrarre i punti di riferimento MediaPipe 33 (Figura 3). Scartare i frame con fiducia nel rilevamento al di sotto della soglia o applicare interpolazioni per i dati mancanti.
NOTA: MediaPipe rileva 33 punti di riferimento corporei, inclusi i punti chiave di faccia, torso e arti (Figura 3). Per il protocollo attuale, sono stati utilizzati solo i punti di riferimento del tronco e della parte inferiore del corpo rilevanti per l'analisi dal sedere alla posizione in piedi: Spalla [punti di riferimento 11 (spalla sinistra) e 12 (spalla destra)], Anca [punti di riferimento 23 (anca sinistra) e 24 (anca destra)], Ginocchio [punti di riferimento 25 (ginocchio sinistro) e 26 (ginocchio destro)], e Caviglia [punti di riferimento 27 (caviglia sinistra) e 28 (caviglia destra)]. Questi punti di riferimento vengono rilevati automaticamente dal video RGB e sono stimati dalle caratteristiche visive (anziché dalle posizioni retroriflettenti dei marcatori usate nel modello Plug-in Gai).
- Conferma che tutti i punti di riferimento chiave (spalla, anca, ginocchia, caviglia) siano stati rilevati con sicurezza ≥ 0,7.
- (Opzionale) Se la distorsione dell'obiettivo è rilevante, distorsi i fotogrammi usando parametri di calibrazione (matrice della camera e coefficienti di distorsione) prima di eseguire MediaPipe.
- YOLO-Pose: In parallelo, caricare il modulo YOLO-Pose integrato in vailá.
- Configura il modello con pesi predefiniti per il rilevamento degli scheletroni umani (set di keypoint coerente con il formato COCO). Ogni fotogramma viene elaborato per rilevare punti chiave scheletrici utilizzando la backbone di YOLO, ottimizzata per prestazioni robuste sotto motion blur, occlusione o sfondi complessi.
- Applicare filtri di levigatura temporale per ridurre il jitter frame a frame e allineare i punti chiave rilevati con il sistema di coordinate usato per MediaPipe.
- Per il filtro di levigatura temporale, applicare un filtro Butterworth passa-basso di ordine 4 con frequenza di taglio di 6 Hz (i movimenti da sedere a posizione hanno un contenuto di frequenza dominante inferiore a 5 Hz) a tutti i dati delle serie temporali con angolo congiunto, sia basati su marker che senza marker, per rimuovere il rumore ad alta frequenza preservando il segnale di movimento.
- Implementa questo filtro utilizzando le funzioni scipy.signal.butter() e scipy.signal.filtfilt() in Python, utilizzando un filtraggio avanti-indietro a zero fase per evitare spostamenti temporali.
- Gestione dei dati in vailá: Esporta traiettorie di riferimento da entrambe le pipeline (MediaPipe e YOLO-Pose) in un formato standardizzato .csv o .json. Memorizza i metadati (numero di frame, timestamp, fiducia nel rilevamento) insieme alle coordinate dei keypoint. Questo garantisce la comparabilità tra i metodi e la riproducibilità delle analisi.
- Definizioni di coordinate e angoli articolari: Definire gli angoli di flessione dell'anca e del ginocchio nel piano sagittale con valori positivi per la flessione.
- Per dati senza marcatori, derivare i centri/segmenti articolari dai punti di riferimento di MediaPipe (ad esempio, anca: proxy bacino; ginocchio: femore-tibia; tronco: segmento spalla-anca) e calcola gli angoli sagittali usando un sistema di coordinate articolari coerente.
NOTA: Gli angoli articolari del piano sagittale sono calcolati geometricamente dalle coordinate 2D dei punti di riferimento. La toolbox di Vailá calcola l'angolo (θ) tra due vettori segmenti (vettore a e vettore b) usando l'arco coseno del loro prodotto scalare: θ = arccos((a · b) / (|a| |b|)). La flessione dell'anca è definita come l'angolo tra il vettore 'tronco' (vettore che collega i punti di riferimento di MediaPipe 11/12 [spalla] e 23/24 [anca]) e il vettore 'coscia' (vettore che collega 23/24 [anca] e 25/26 [ginocchio]). La flessione del ginocchio è definita come l'angolo tra il vettore 'coscia' (vettore che collega 23/24 [anca] e 25/26 [ginocchio]) e il vettore 'gamba' (vettore che collega 25/26 [ginocchio] e 27/28 [caviglia]).
- Applicare la stessa convenzione di segni e filtraggio (se necessario) a entrambi gli approcci per facilitare il confronto.
- Sincronizzazione temporale: Allineare i dati di entrambi gli approcci utilizzando il timbro temporale del trigger LockLab; Altrimenti, allinea il primo frame flash/clap visibile tra i flussi di dati.
- Ricampionare le serie temporali, se necessario, a una base temporale comune prima dei confronti.
- Definisci il ciclo di movimento:
- Definire il ciclo da seduto a piedi dall'inizio dell'inclinazione del tronco in avanti (soglia di velocità angolare positiva del tronco) alla posizione stabile e eretta per i bambini che si sviluppano tipicamente (velocità angolare del tronco ~0 ed estensione totale del ginocchio) e, per i bambini con paralisi cerebrale, posizione eretta stabile e posizione massima del marcatore cervicale (sistema basato sul marcatore).
- Per i bambini con paralisi cerebrale, che potrebbero non raggiungere l'estensione completa (cioè tronco allineato con il bacino, anca a 0° flessione, ginocchia completamente estese) come osservato nei bambini in tipico sviluppo, definire la fine del ciclo come la postura più eretta raggiunta coerente con la prova statica in piedi, e confermata tramite ispezione visiva per garantire una posizione stabile prima della prova successiva.
- Non normalizzare nel tempo per i grafici rappresentativi; Segnala la durata effettiva del compito per ogni prova. (Le analisi con normalizzazione temporale possono essere fornite come supplementari, se desiderato.)
- Calcolo e metriche del ciclogramma: Tracciare gli angoli dell'anca (asse x) rispetto al ginocchio (asse y) per ogni prova per generare ciclogrammi anca-ginocchio.
- Prove e approcci sovrapposti (basati su marker vs. senza marker) per confronto visivo.
- Calcola metriche opzionali riassuntive: range di movimento anca/ginocchio, area dell'anello, orientamento dell'anello (angolo dell'asse principale) e lunghezza del percorso.
- Esporta serie temporali e metriche processate come .csv per l'analisi statistica.

Figura 3: I 33 punti di riferimento di MediaPipe. Per questo studio, abbiamo utilizzato solo i punti di riferimento pertinenti al compito di stare seduto a stare in piedi, in particolare i punti di riferimento 11 e 12 (spalle), 23 e 24 (fianchi), 25 e 26 (ginocchia) e 27 e 28 (caviglie). Clicca qui per visualizzare una versione più grande di questa figura.