Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision Next revision Both sides next revision | ||
tag:stage_d_ete_2017_poppyimitateskinect [2017/08/28 23:32] s4poppy2017 [Conversion de quaternion à l'angle de moteur] |
tag:stage_d_ete_2017_poppyimitateskinect [2017/09/06 01:50] s4poppy2017 |
||
---|---|---|---|
Line 1: | Line 1: | ||
{{tag>Poppy Project poppy-kine Kinect}} | {{tag>Poppy Project poppy-kine Kinect}} | ||
- | ====== Poppy-Kine : Stage d'été 2017 ====== | + | ====== Poppy-Kine : Stage d'été 2017 PoppyImitatesKinect ====== |
===== Introduction ===== | ===== Introduction ===== | ||
Line 6: | Line 6: | ||
Les objectifs principaux est travail portera sur la conversion et l’imitation de mouvements humains capturés à l’aide d’une Kinect en mouvements robots joués par Poppy. | Les objectifs principaux est travail portera sur la conversion et l’imitation de mouvements humains capturés à l’aide d’une Kinect en mouvements robots joués par Poppy. | ||
\\ - Conversion de l’orientation et la position des jointures en angles moteur de Poppy | \\ - Conversion de l’orientation et la position des jointures en angles moteur de Poppy | ||
- | \\ - Simulation sur Vrep | + | \\ - Simulation sur // Vrep // |
---- | ---- | ||
===== Comment l'utiliser ===== | ===== Comment l'utiliser ===== | ||
- | - : Installation de V-rep | + | - : Installation de // V-rep // |
- : Voir [[poppy-kine:poppy-kine-2015-s5|Poppy-Kine : S5 project 2015-2016]] | - : Voir [[poppy-kine:poppy-kine-2015-s5|Poppy-Kine : S5 project 2015-2016]] | ||
- : Capture les données via Kinect en utilisant l'outil de Poppy-Kine-S5 project 2015-2016 | - : Capture les données via Kinect en utilisant l'outil de Poppy-Kine-S5 project 2015-2016 | ||
- : faire la conversion | - : faire la conversion | ||
- | - : Simulation sur V-rep | + | - : Simulation sur // V-rep // |
Line 21: | Line 21: | ||
* Connectez le Kinect | * Connectez le Kinect | ||
* Capture les données via Kinect en utilisant l'outil de Poppy-Kine-S5 project 2015-2016 | * Capture les données via Kinect en utilisant l'outil de Poppy-Kine-S5 project 2015-2016 | ||
- | ==== Deuxième étape: obtenir la position des jointures en angles moteur de Poppy==== | + | <hidden> |
+ | \\ Cliquez **save.bat** | ||
+ | \\ Entrez le //nom d'exercice// dans le shell. | ||
+ | \\ Une nouvelle fenêtre, avec la vidéo capturé par le Kinect caméra et le squelette de la personne. | ||
+ | \\ Les mouvements sont séparés par des pressions sur // espace //. | ||
+ | \\ | ||
+ | \\ Par exemple: | ||
+ | * //espace// : Commence la capture du premier mouvement, | ||
+ | * Faire le mouvement... | ||
+ | * //espace// : Arrête la capture du premier mouvement, | ||
+ | * //espace// : Commence la capture du second mouvement, | ||
+ | * etc | ||
+ | Les mouvements sont sauvegardés dans **⁄exercices⁄<name_of_the_exercise>/** dossier, <name_of_the_exercise_x>.txt fichier. | ||
+ | \\ x commence à zéro (Premier mouvement. | ||
+ | \\ Pour finir de capturer les mouvements, fermez la fenêtre. | ||
+ | </hidden> | ||
+ | * Enregistrez le fichier sur le dossier // mouvement_kinect // et le mettez json fichier. | ||
+ | ==== Deuxième étape: obtenir la position en angles moteur et la simuler==== | ||
Le code est sur git https://redmine.telecom-bretagne.eu/projects/poppyimitateskinect | Le code est sur git https://redmine.telecom-bretagne.eu/projects/poppyimitateskinect | ||
- : ouvrir le // V-rep // | - : ouvrir le // V-rep // | ||
- : lancer la prgrammation // Main.py // et entrer le // nom de fichier // de quaternion dans le terminal. | - : lancer la prgrammation // Main.py // et entrer le // nom de fichier // de quaternion dans le terminal. | ||
- | <hidden>Entrer // python Main.py nom_fichier // | + | Entrer // python Main.py nom_fichier // |
\\ Par exemple : | \\ Par exemple : | ||
\\ // python Main.py 20170825_0 // | \\ // python Main.py 20170825_0 // | ||
Line 39: | Line 56: | ||
* Il faut fermer les fenêtres de figure pour que la progrme avance. | * Il faut fermer les fenêtres de figure pour que la progrme avance. | ||
* La Simulation est dans le logiciel // V-rep //. | * La Simulation est dans le logiciel // V-rep //. | ||
- | </hidden> | + | ==== Fonction de Code ==== |
+ | \\ // butterworth.py et filtre.py // est le filtre de butterworth. | ||
+ | \\ Les fonctions de // Main.py // : | ||
+ | \\ // creatPoppyData(ex) : // Conversion de quaternion à l'angle. // ex // est le nom d'exercice. | ||
+ | \\ // runSimu(PoppyData) : // Exécuter la simulation sur V-rep. // PoppyData // est les données des angles qui sont enregistré sur le dossier // mouvement_poppy // . | ||
---- | ---- | ||
Line 59: | Line 80: | ||
</code> | </code> | ||
==== filtrer les angles ==== | ==== filtrer les angles ==== | ||
- | La même que le filtre dernier. | + | \\ Parceque il y a les points discontinu sur les angles. Nous ajoutons un filtre pour assurer que les angles sont lissés. |
- | \\ {{:tag:angle_filtre.png?500|}} | + | \\ Le filtre est la même que le dernier. C'est le résultat(angles filtrés) |
- | ---- | + | \\ {{:tag:angle_filtre.png?500|}} |
- | ===== Amélioration ===== | + | \\ |
+ | |||
+ | ===== Résultat et Amélioration ===== | ||
+ | \\ {{:tag:kinect-1.png?300|}} {{:tag:kinect-2.png?300|}} | ||
\\ Les angles obtenu ne sont par très précis. | \\ Les angles obtenu ne sont par très précis. | ||
\\ Nous n'avons pas détecter la faisabilité de mouvment. Il y a les cas où le poppy ne peut pas faire le mouvment humaines. | \\ Nous n'avons pas détecter la faisabilité de mouvment. Il y a les cas où le poppy ne peut pas faire le mouvment humaines. | ||
\\ De plus, c'est mieux d'ajouter la gestion de l'équilibre | \\ De plus, c'est mieux d'ajouter la gestion de l'équilibre |