2012-09-17 2 views

Répondre

1

Je verrais Comparing a saved movement with other movement with Kinect pour suivre l'ensemble du corps. La réponse montre le code here qui montre comment sauvegarder les données du squelette. Et mapping an ellipse to a joint in kinect sdk 1.5 d'avoir le suivi des articulations si vous voulez suivre les articulations pas tout le corps (fonctionne actuellement mieux, mais lorsque le suivi du corps entier fonctionne, utilisez-le parce qu'il est plus efficace et efficient).

+0

merci! est ce code écrit pour .net? comment puis-je le compiler? – memyself

+0

Son C#, dowlload cisual C# 2010 à partir de msdn avec le kinect sdk – Kinected

+0

@memyself id aussi cette question résolue vous cliquez sur la petite coche verte à côté de mon amswer – Kinected

0

votre cas est assez simple, mais nécessite une initialisation pour l'objet car en général un terme "objet" est mal défini. Il peut s'agir d'un objet ou d'un objet en mouvement proche ou même de l'objet touché, qui a une certaine couleur, taille ou forme. Supposons que vous définissiez un objet par un mouvement qui est tout ce qui bouge dans votre nuage de points est un objet. Je suggère de le faire:

  • détection d'objets est facile si l'objet se déplace plus que sa taille depuis
    vous venez peut soustraire des cartes de profondeur et finir avec votre objet:
    depth1-depth2 > T mais si l'objet se déplace lentement et décale seulement par une fraction de sa taille, vous devez utiliser toutes les informations de haute fréquence que vous avez, qui peuvent être la profondeur ou la couleur ou les deux. Il va être bruyant comme la figure ci-dessous montre

enter image description here

  • dès que vous avez votre objet sélectionné, vous pouvez le nettoyer en exécutant un morphological filters (éroder + dilatent) pour effacer bruit et obtenir une seule goutte. Après cela, vous avez juste besoin de trouver quelques fonctionnalités dans le blob comme la profondeur moyenne ou la couleur moyenne et cherchez-les dans une petite fenêtre autour de l'emplacement précédent de l'objet afin de redécouvrir l'objet; Enfin, n'oubliez pas de mettre à jour ces caractéristiques lorsque l'objet se déplace .

D'autres idées que vous voudrez peut-être utiliser sont les suivantes: gradient de profondeur, les composants connectés en profondeur, profondeur d'arrière-plan pré-enregistrement pour soustraction plus propre, en cours d'exécution grabCut sur la zone de profondeur sélectionnée par un clic de souris, etc.

Questions connexes