Differences
This shows you the differences between two versions of the page.
| Both sides previous revision Previous revision Next revision | Previous revision | ||
| comparatif_openpose_kinect [2018/10/23 09:19] – [Comparaison des données:] ybendou | comparatif_openpose_kinect [2020/09/12 17:15] (current) – [Superposition des squelettes:] mai | ||
|---|---|---|---|
| Line 1: | Line 1: | ||
| ====== Stage 2018 ====== | ====== Stage 2018 ====== | ||
| + | ===== Introduction ===== | ||
| Du 02 Juillet 2018 au 30 Juillet 2018, j’ai effectué un stage au sein du département informatique de l’IMT Atlantique. Au cours de ce stage, j’ai pu m’intéresser aux différents algorithmes d’estimation du squelette humain. | Du 02 Juillet 2018 au 30 Juillet 2018, j’ai effectué un stage au sein du département informatique de l’IMT Atlantique. Au cours de ce stage, j’ai pu m’intéresser aux différents algorithmes d’estimation du squelette humain. | ||
| Dans le cadre de l’utilisation du robot Poppy pour exécuter des exercices de kinésithérapie, | Dans le cadre de l’utilisation du robot Poppy pour exécuter des exercices de kinésithérapie, | ||
| Line 103: | Line 103: | ||
| ==== Coloriage de la vidéo en supprimant le squelette: ==== | ==== Coloriage de la vidéo en supprimant le squelette: ==== | ||
| + | |||
| Les données brutes fournies contiennent le squelette de la Kinect tracé sur la vidéo. Il faut tout d’abord corriger cela en supprimant le squelette et en essayant de recolorier la vidéo. | Les données brutes fournies contiennent le squelette de la Kinect tracé sur la vidéo. Il faut tout d’abord corriger cela en supprimant le squelette et en essayant de recolorier la vidéo. | ||
| - | Pour cela, le programme (Remove_Skeleton.py) permet de détecter les pixels rouges du squelette, les supprime et les remplace en faisant une moyenne sur un carré de 16 pixels centré sur le pixel que l’on souhaite supprimer sans prendre en compte les pixels rouges.\\ | + | Pour cela, le programme (// |
| Ce programme parcourt la vidéo frame par frame et enregistre le résultat sous forme d’une nouvelle vidéo avec la possibilité d’enregistrer les frames. | Ce programme parcourt la vidéo frame par frame et enregistre le résultat sous forme d’une nouvelle vidéo avec la possibilité d’enregistrer les frames. | ||
| \\ Une fois la vidéo coloriée, nous disposons d’une vidéo relativement similaire à l' | \\ Une fois la vidéo coloriée, nous disposons d’une vidéo relativement similaire à l' | ||
| Line 133: | Line 134: | ||
| ==== Superposition des squelettes: ==== | ==== Superposition des squelettes: ==== | ||
| - | Avant d’entamer la comparaison, | + | Avant d’entamer la comparaison, |
| * Rotation selon l’axe des y pour les données de la Xsens. | * Rotation selon l’axe des y pour les données de la Xsens. | ||
| * Rescale du squelette en se basant sur la longueur des jambres (genou à la cheville) | * Rescale du squelette en se basant sur la longueur des jambres (genou à la cheville) | ||
| Line 161: | Line 162: | ||
| Les résultats suivants sont ceux de la vidéo Chris1 pour la poignée Droite. | Les résultats suivants sont ceux de la vidéo Chris1 pour la poignée Droite. | ||
| + | {{ : | ||
| + | |||
| + | ===== Conclusion ===== | ||
| + | Pour conclure, ce projet a permi l’implémentation de différentes versions de l’algorithme OpenPose tel quel la Mobilenet sous Tensorflow et l’implémentation sous Caffe.\\ | ||
| + | Après comparaison de ces implémentations avec la Mobilenet et la vérité terrain représentée par la Xsens. Il paraît que l’implémentation sous Caffe est la plus performante pour un scale au dessus de 1. Toutefois, cette version est très lente et ne peut pas être utilisée pour un rendu en temps réel. D’autre part, la mobilenet est la version la plus rapide d’OpenPose. Ses résultats sont comparables à ceux de la Kinect. \\ | ||
| + | Malheureusement, | ||
| + | |||
| + | ===== Compléments ===== | ||
| + | |||
| + | * Le squelette utilisé dans tf_pose_estimation est le modèle COCO. La correspondance des index et des parties du corps est consultable sur https:// | ||
| + | {{tag> | ||