Oui, le CSI peut contenir des variations répétables causées par un geste et un classifieur peut apprendre ces variations. La difficulté n'est pas de dessiner une onde : il faut conserver des paquets représentatifs, stabiliser l'émetteur et le récepteur, définir des gestes répétables et vérifier que le modèle n'apprend pas seulement la pièce ou la personne.
Un premier projet raisonnable limite le vocabulaire à trois ou six gestes plus une classe repos ou inconnue. Il conserve les horodatages, les identifiants de session et les conditions de capture, puis teste une personne ou une pièce absente de l'entraînement. Pour une simple présence ou un mouvement général, les guides dédiés de détection de présence et de mouvement sont plus adaptés.
WIDAR3 et SignFi peuvent aider à comparer des idées de prétraitement, mais leurs appareils, leurs labels et leurs environnements ne remplacent pas une validation locale. Chaque score doit être relié à une source de signal, une règle d'étiquetage et un découpage de test explicite.
Ce que la reconnaissance de gestes par WiFi CSI reconnaît réellement
Le CSI décrit l'évolution du canal radio sur les sous-porteuses, les antennes et le temps. Une main en mouvement modifie les trajets multiples et la phase. Le modèle ne voit pas un geste lisible : il voit une fenêtre de mesures après nettoyage, calibration, normalisation et extraction de caractéristiques.
Un geste de cinq classes, un vocabulaire de langue des signes et une activité dans une pièce sont des tâches différentes. Un score élevé obtenu avec une seule personne et une seule salle ne prouve pas la portabilité.
- Commencer par trois à six gestes délibérés, plus repos ou inconnu.
- Retourner une classe, une confiance et un état inconnu lorsque la fenêtre est ambiguë.
- Séparer présence, mouvement, posture, identité et geste dans la spécification.
Le pipeline de capture aux classes de gestes
Une capture reproductible documente la source des paquets, le récepteur CSI, la position des antennes, le canal et la pièce. Conservez les horodatages, le participant, le geste, la distance et la session avant d'ajouter des filtres sophistiqués.
Le prétraitement fait partie de la frontière du modèle : éliminez les paquets corrompus, normalisez avec prudence et apprenez les paramètres uniquement sur l'entraînement. Un filtre calculé sur tout l'enregistrement peut divulguer l'information du test.
- Garder les données brutes ou peu transformées pour l'audit.
- Enregistrer canal, largeur de bande, firmware, antennes et cadence des paquets.
- Créer les fenêtres après avoir séparé les sessions lorsque c'est possible.
Matériel : commencer par l'accès au CSI, pas par le marketing
Un ESP32 compatible CSI est un point de départ abordable si la carte, la version d'ESP-IDF, le firmware, la source des paquets et la configuration d'antenne sont documentés. Il s'agit d'un composant de capture, pas automatiquement d'un capteur de gestes complet.
Un ordinateur Linux avec une carte compatible peut fournir une autre voie de capture. Un Raspberry Pi peut héberger le journal, l'inférence ou l'affichage sans devenir pour autant un récepteur CSI. Classez chaque projet comme outil de capture, jeu de données, code de modèle ou application.
- Vérifier que la carte expose bien le CSI, et pas seulement RSSI.
- Fixer l'émetteur, le récepteur, le canal et la distance pour la référence.
- Utiliser le guide ESP32 CSI lorsque la voie matérielle n'est pas claire.
Jeux de données et labels : WIDAR3, SignFi et votre pièce
Les jeux publics permettent de reproduire une expérience et de tester une base logicielle. WIDAR3 et SignFi donnent un contexte de recherche utile, mais leurs protocoles et leur diversité peuvent différer fortement de votre matériel.
Pour un déploiement réel, recueillez plusieurs répétitions à des vitesses différentes, des mouvements accidentels et un état repos. Conservez les identifiants de participant et de session, puis séparez les personnes ou les sessions avant de créer des fenêtres qui se chevauchent.
- Écrire une consigne courte et identique pour chaque geste.
- Inclure des cas négatifs : ventilateur, porte, animal, passage et pièce vide.
- Ne pas présenter une précision publiée comme une garantie pour votre pièce.
Prétraitement et entraînement du modèle
Commencez par une base interprétable : caractéristiques d'amplitude ou de phase, fenêtre fixe, classifieur simple et matrice de confusion. Comparez ensuite les réseaux convolutifs, récurrents ou attentionnels sans perdre la traçabilité des transformations.
Les augmentations peuvent améliorer la robustesse mais ne remplacent pas la variation réelle. Conservez une session finale intacte et rapportez le macro-F1, le rappel par classe, la latence, les prédictions inconnues et les faux déclenchements au repos.
- Séparer les sessions ou les participants avant les fenêtres recouvrantes.
- Inspecter les confusions entre gestes proches et classe repos.
- Conserver les paramètres de prétraitement appris sur l'entraînement seulement.
Valider avec des personnes et des pièces différentes
Le test le plus informatif n'est pas une nouvelle fenêtre du même enregistrement. Testez une personne, une pièce, une journée, une position de récepteur et une activité négative qui représentent réellement le déploiement.
Utilisez une consigne constante, mais acceptez des vitesses et postures naturelles. Comparez le rappel par classe, les fausses alarmes et les erreurs représentatives. Une classe inconnue est préférable à une prédiction confiante pour chaque fenêtre.
- Le découpage dans une session sert au débogage, pas à prouver la généralisation.
- Le découpage par personne teste la dépendance à un style de mouvement.
- Les cas inconnus testent la capacité du système à refuser de classer.
Limites, confidentialité et prochaine étape
Le CSI dépend de la géométrie, du firmware, du trafic radio, des murs, des meubles, des antennes et des personnes. Un geste peut changer dans une autre pièce et un mouvement sans rapport peut ressembler à une classe entraînée. Ce système ne doit pas être présenté comme une caméra, une reconnaissance d'identité ou un dispositif médical sans preuves spécifiques.
Même sans caméra, le sensing radio peut révéler des habitudes de présence et de mouvement. Préférez le traitement local, une conservation courte, un consentement visible et un état inconnu. Pour commencer, choisissez une capture ESP32 ou un jeu public et écrivez le découpage par participant avant l'entraînement.
- Traiter le vocabulaire, la pièce, les personnes et le matériel comme une spécification.
- Ne pas déduire une identité, une santé ou une activité cachée.
- Relier chaque score au découpage, au nombre de sessions et à la définition de l'échec.
Références techniques principales
FAQ sur la reconnaissance de gestes par WiFi CSI
La reconnaissance de gestes est-elle la même chose que la détection de mouvement WiFi ?
Non. La détection de mouvement cherche un changement, tandis que la reconnaissance associe une fenêtre à plusieurs classes définies.
Un ESP32 peut-il reconnaître des gestes seul ?
Un ESP32 compatible peut capturer le CSI, mais il faut aussi une source de paquets, des labels, un prétraitement, un modèle et une validation. La carte n'est pas un capteur fini.
Combien de gestes faut-il pour commencer ?
Trois à six gestes plus repos ou inconnu suffisent pour un premier jeu de données analysable. Ajoutez des classes après les tests de nouvelles sessions et personnes.
Quel est le meilleur jeu de données de gestes WiFi CSI ?
Il n'existe pas de meilleur jeu universel. Choisissez celui dont le matériel, les gestes, l'échantillonnage et la diversité correspondent à votre question, puis recueillez des données locales pour le déploiement.
Pourquoi le modèle fonctionne-t-il dans une pièce et échoue-t-il dans une autre ?
Les trajets multiples, les meubles, la position des antennes, le trafic radio et les participants changent le CSI. Un découpage sans variation de pièce peut mesurer la mémorisation de l'environnement.
La reconnaissance CSI peut-elle identifier une personne ou diagnostiquer sa santé ?
Non, pas sur la base d'un classifieur de gestes. Ces affirmations demandent des tâches, des preuves, un consentement, des contrôles de confidentialité et une validation indépendante.