Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
poppy-kine:gplvm [2018/04/09 19:14]
m16devan
poppy-kine:gplvm [2020/07/03 17:28]
mai Tag0 Added: poppy-kine,theory
Line 1: Line 1:
 ====== Gaussian Process Latent Variable Model (GPLVM) ====== ====== Gaussian Process Latent Variable Model (GPLVM) ======
-{{tag>​software}}+{{tag> ​poppy-kine ​software ​theory ​}}
  
 ===== Principe ===== ===== Principe =====
Line 14: Line 14:
     * 1. Chargement des données     * 1. Chargement des données
 La démonstration a pour but de charger un mouvement humain et son mouvement Poppy correspondant. ​ La démonstration a pour but de charger un mouvement humain et son mouvement Poppy correspondant. ​
-Poppy 
 <code matlab> ​ <code matlab> ​
 %% Loading training data%% %% Loading training data%%
Line 20: Line 19:
 [Z_train_ori] = readPoppyExoData('​cacheTeteKine'​);​ [Z_train_ori] = readPoppyExoData('​cacheTeteKine'​);​
 nbData = size(Z_train_ori,​1);​ %length of the sequence nbData = size(Z_train_ori,​1);​ %length of the sequence
-</​code>​ 
  
-Squelette humain 
-<code matlab> 
 % load Skeleton data: orientation are in O_train, position in Y_train. % load Skeleton data: orientation are in O_train, position in Y_train.
 % O_train is not used % O_train is not used
Line 31: Line 27:
 O_train=O_train';​Y_train=Y_train';​ O_train=O_train';​Y_train=Y_train';​
 </​code>​ </​code>​
-L'​alignement temporel ​(temporalAlignment) ​entre les deux séquences peut être nécessaire pour s'​assurer des correspondances entre les données de squelette humain et les données du robot Poppy.+Les données d'​angles Poppy sont chargées à partir des fichiers exercices au format json créés via l'​application web [[poppy-kine:​poppy_grr_keraal|Poppy GRR Keraal]]. Un fichier exercice contient la liste des mouvements contenus dans l'​exercice. Un fichier mouvement, également au format json, contient la liste des positions en angles de chaque moteur pour chaque timestamp du mouvement. Ainsi la fonction '​readPoppyExoData'​ récupère ces angles dans une matrice où chaque ligne est une trame et les angles sont en colonne dans l'​ordre des ids des moteurs de Poppy. 
 + 
 +Les données de squelette humain incluent pour chaque articulation la position (coordonnées carthésiennes en 3 dimensions) et l'​orientation (sous forme de quaternion). Les fichiers de mouvement ont été enregistrés à l'aide de la [[sensors:​kinect_library|bibliothèque Kinect]]. Ainsi la fonction '​loadData'​ retourne la matrice des orientations,​ la matrice des positions, et une structure contenant les données pour chaque articulation séparément. Le format des matrices est une ligne par trame, et les données en colonnes sont dans l'​ordre de la hiérarchie du squelette. 
 + 
 + 
 + 
 +L'​alignement temporel entre les deux séquences peut être nécessaire pour s'​assurer des correspondances entre les données de squelette humain et les données du robot Poppy.
 <code matlab> <code matlab>
 registration=1;​ %make temporal alignment or not registration=1;​ %make temporal alignment or not
  • poppy-kine/gplvm.txt
  • Last modified: 2020/07/03 17:28
  • by mai