Bonjour,
Je suis actuellement entrain de travailler sur un projet d'informatique affective où je dois détecter les émotions corporelles de personne via l'interface kinect. Mon projet avance plutôt bien. Afin de récupérer les coordonnées des différentes articulations (qui sont au nombre de 22) de la personne entrain d'être filmée (kinect+OSCeleton), j'ai crée une classe Matrice. Afin de pouvoir identifier et récupérer les matrices pour chaque articulation, j'ai crée une Hashtable et lui ai donné les paramètres suivant:
dic.put(tab2[i],tabMat.get(i)); où tab2 est le tableau des noms des articulations et tabMat.get(i) une liste de matrices.
Jusque là, tout va bien! Mes matrices sont remplies comme il faut! Mon problème se situe au niveau de l'affichage ou l'écriture de cette hashtable.
Très simplement, j'ai fait:
for(int i=0;i<tab2.length;++i)
{
var = tab2[i];
println(tab2[i]); // affichage sur la console
println(dic.get(var));
outputfile4.println(dic.get(var)); // affichage dans un fichier (processing)
outputfile4.flush();
}
L'affichage console est parfait, j'obtiens mes matrices dans la bonne forme
Main_droite:
0 1 3 4
9 1 1 0
0 0 0 1
0 0 0 0
...
Dans mon fichier, j'obtiens le résultat sous la forme:
Main_droite:
0 1 3 4 9 1 1 0 0 0 0 1 0 0 0 0
J'ai essayé d'utiliser les méthode writeObject(Hashtable):
ObjectOutputStream out = new ObjectOutputStream(new FileOutputStream(f));
out.writeObject(dataHastable);
out.close();
-> ne marche pas
Pareil avec ObjectOutputStream...
Est-ce donc possible d'écrire cette hashtable dans un fichier dans le bon format (le même qu'affiché sous console!)
Merci d'avance pour vos réponse,
Rémy
Partager