Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
1532 connectés 

  FORUM HardWare.fr
  Programmation
  C++

  À la recherche d'une librairie Kinect opérationnelle !

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

À la recherche d'une librairie Kinect opérationnelle !

n°2119984
Suzaku13
Posté le 06-01-2012 à 16:24:18  profilanswer
 

Salut à tous,
 
  Voilà je souhaiterais développer une application pour la kinect. Sans rentrer dans les détails, j'ai principalement besoin de récupérer l'image RGB et la carte de profondeur de la Kinect (probablement sous forme de vector). Je travaille en C++ sur Windows 7 64 bits avec Visual Studio 2008.
 
  Or je suis en train de m'arracher les cheveux à trouver une librairie me donnant des applications de bases ainsi que leurs sources que je pourrais utiliser.
 
  J'ai d'abord commencer avec OpenNi : parmi les différents samples fournis, il y a une application NViewer qui affichent ce que voit la Kinect ainsi que la carte de profondeur sous forme de nuances de jaune. Quand je lance l'application NiViewer, le tout marche bien. Mais quand j'ouvre le fichier sln correspondant et que je tente de compiler et d'exécuter, l'exécution me donne une fenêtre MSDOS affichant le message d'erreur "Open Failed : File not Found !". Après quelques recherches sur le net, il semblerait que cela soit dû aux drivers OpenNi et qu'il faille prendre les derniers drivers instables OpenNi. Quelqu'un a-t-il déjà eu le même problème avec OpenNi ?
 
  J'ai ensuite essayé le Kinect SDK fourni par Windows. Les applications samples marchent bien mais je ne peux pas ouvrir les sln des samples (par exemple SkeletonViewer) qui me demandent Visual Studio 2010 !
 
 
 
 
    Voilà peut-être avez vous d'autres librairies à me proposer, qui fonctionneraient bien avec ma plateforme (et mes logiciels) de travail.
 
 
   Merci d'avance  :jap:

mood
Publicité
Posté le 06-01-2012 à 16:24:18  profilanswer
 

n°2120001
breizhbugs
Posté le 06-01-2012 à 18:03:58  profilanswer
 

Ton "Open Failed : File not Found !" il arrive quand?
Quand tu compiles?
Quand tu exécutes?
Et il concerne quel fichier?
Sinon pourquoi ne pas DL VS 2010 express pour tester?


---------------
Seul Google le sait...
n°2120012
Suzaku13
Posté le 06-01-2012 à 19:32:23  profilanswer
 

Mon erreur arrive lors de l'exécution. Les exe des samples fournis par défaut marchent bien (le NiViewer par ex), mais quand j'ouvre le fichier sln fourni correspondant à NiViewer, la solution compile mais l'exécution me donne ce message d'erreur dans une fenêtre DOS.
  En gros les applications fournies avec OpenNi marchent, mais quand je tente de les compiler ça plante à l'exécution.
 
Pour Visual Studio 2010 Express, je vais le dl pour tester. Mais comme c'est une version gratuite je suppose qu'il y a des limitations (alors que je possède la version complète de Visual Studio 2008).

n°2120023
breizhbugs
Posté le 06-01-2012 à 22:19:34  profilanswer
 

Ne serait ce pas le fichier de configuration qu'il manque?
Et si tu déplaces le fichier de l'application par défaut vers le répertoire de ton fichier compilé?
Les limitations sont en termes de fonctionnalités avancés. Pour les librairies, Au besoin tu peux télécharger le windows sdk pour le compléter. (y a qu'une version light avec)


Message édité par breizhbugs le 06-01-2012 à 22:19:51

---------------
Seul Google le sait...
n°2120072
Suzaku13
Posté le 07-01-2012 à 16:42:49  profilanswer
 

J'ai pris Visual Studio 2010 C++ Express donc je peux ouvrir les sln des samples fournis avec le SDK de Microsoft. J'ai donc ouvert le sln de SkeletalViewer, mais le défi reste de trouver où sont stocker l'image RGB et la carte de profondeur. Il y a pas mal de classes utilisée qui me sont inconnues. As-tu déjà travailler sur ce Kinect SDK ?

n°2120075
breizhbugs
Posté le 07-01-2012 à 17:15:51  profilanswer
 

Non.
Pourrais pas t'aider la dessus.


---------------
Seul Google le sait...
n°2120080
Suzaku13
Posté le 07-01-2012 à 18:17:48  profilanswer
 

Je pense avoir trouvé l'image de la caméra. Elle est stockée dans une variable pBuffer du type BYTE* (BYTE correspondant au type unsigned char). pBuffer semble contenir 640*480*4 BYTE et est du type NUI_IMAGE_TYPE_COLOR qui correspond à une image RGB32.
 
Afin de voir si pBuffer correspondait bien à l'image de la caméra, j'ai écrit les différentes valeurs de BYTE dans un fichier PPM (en sautant à chaque fois la 4ème valeur de chaque pixel, qui doit correspondre à l'alpha, càd pBuffer[3], pBuffer[7], pBuffer[11],etc...). L'image que j'obtiens "ressemble" bien à l'image de la caméra, mais elle semble trop bleue.
Est-ce que cela peut être dû au fait qu'à chaque fois que j'écris une valeur de pBuffer (un BYTE), je la caste en int (pour obtenir un int entre 0 et 255) ?

n°2120147
theshockwa​ve
I work at a firm named Koslow
Posté le 08-01-2012 à 17:17:17  profilanswer
 

normalement, quand tu initialises le SDK Kinect, y'a un jeu de constantes à lui filer pour lui dire si tu veux qu'il prenne le temps de te fournir l'image RGB, la depth, les squelettes ou n'importe quelle combinaison des trois, donc assure-toi déjà que tu as bien les bons flags passés.
 
J'ai déjà fait un peu de code y'a plusieurs mois pour faire du kinect sur PC, je pourrais toujours aller rechercher le code exact si t'en as vraiment besoin, mais j'ai pas souvenir que c'était particulièrement compliqué de récupérer les images.
 
Edit : si ton image est trop bleue, c'est peut-être que tu t'es vautré de canal. Visiblement, tu es parti du principe que tu étais en RGBA, c'est pas forcément le cas, ca ne me surprendrait qu'à moitié que tu sois en fait en ABGR, donc tu devrais peut-être plutôt skipper les pBuffer[0], pBuffer[4], ...


Message édité par theshockwave le 08-01-2012 à 17:24:13

---------------
last.fm
n°2120156
Suzaku13
Posté le 08-01-2012 à 18:22:31  profilanswer
 

En effet, je me trompais sur le format RGBA  :jap: .
 
Après plusieurs tests il s'avère que l'ordre est BGRA (assez vicieux je trouve  :D ).
 
 
 
Voilà reste le cas de la carte de profondeur, qui devrait poser moins de problème ^^.

n°2120159
theshockwa​ve
I work at a firm named Koslow
Posté le 08-01-2012 à 18:32:21  profilanswer
 

Suzaku13 a écrit :

En effet, je me trompais sur le format RGBA  :jap: .
 
Après plusieurs tests il s'avère que l'ordre est BGRA (assez vicieux je trouve  :D ).
 
 
 
Voilà reste le cas de la carte de profondeur, qui devrait poser moins de problème ^^.


 
en gros, soit tu as du RGBA, soit tu as du ARGB et avec les différences d'endianness, ca te fait deux cas supplémentaires à traiter, mais c'est assez courant de se planter, oui :)


---------------
last.fm
mood
Publicité
Posté le 08-01-2012 à 18:32:21  profilanswer
 

n°2133659
Sylphique
Posté le 29-03-2012 à 11:36:28  profilanswer
 

Bonjour !
 
Je suis un tout petit nouveau sur ce forum. Je viens de m'inscrire pour vous contacter suite à ce sujet lancé concernant la Kinect !
Je ne suis pas très doué en informatique (bien qu'en école d'ingénieur en informatique -__-" ). J'ai un projet à mener avec interface utilisant la kinect.
Je vous rassure, je ne demande aucune solution clef en main. Mon seul soucis est de comprendre ce que c'est qu'une SDK...  :fou:  Et surtout comment l'installer pour que ça marche quand j'essaie de coder des trucs sous VS 2010 ! Pare que pour l'instant je n'ai même pas accès aux librairies ni à rien (rassurez-vous, j'ai au moins compris ce qu'était une SDK. Plein de librairies avec des fonctions et des classes précodées !).  
 
A part ça, je suis perdu. J'ai lu dans ce message que Suzaku13 avait installé la SDK Kinect. C'est précisément ce que dont j'aimerais m'équiper pour coder. (j'avais déjà aperçu OpenNi dans mes recherches mais je préfère rester sur du micrsoft pour le moment)
 
Concrètement, je télécharge quoi comme SDK ? Je mets quoi ou ? Je crée quels liens dans visual pour qu'il reconnaisse la SDK et se l'approprie ?
 
Merci énormément de vos réponses d'avance, et peut-être pourrions-nous discuter kinect plus tard, une fois que je me serai plongé dedans et que j'aurais une petite expérience !
Cordialement,
 
Sylph.


Message édité par Sylphique le 29-03-2012 à 12:01:48
n°2133672
gilou
Modérateur
Modzilla
Posté le 29-03-2012 à 12:09:16  profilanswer
 

Citation :

Concrètement, je télécharge quoi comme SDK ?

Faudrait peut être ne pas être équipé de deux mains gauches!
Je tape SDK Kinect sous google et en 2 clicks j'ai un lien sur "Download SDK"! :sarcastic:  
A+,


Message édité par gilou le 29-03-2012 à 12:11:16

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2133678
Sylphique
Posté le 29-03-2012 à 12:17:24  profilanswer
 

Non mais le truc c'est que y'a des versions beta, des versions officielles et des trucs non officiels. Mais j'ai déjà choppé la version microsoft. C'est la suite qui me contrarie. T_T

n°2133688
gilou
Modérateur
Modzilla
Posté le 29-03-2012 à 13:13:04  profilanswer
 

Et qu'est ce que tu as a faire des bétas et des trucs non officiels pour le moment, alors que tu n'as rien commencé?
Pour le reste, comme d'hab,  [:alkatraz]  
http://stackoverflow.com/questions [...] -2010-in-c  (a adapter pour une version non béta)
A+,


Message édité par gilou le 29-03-2012 à 13:13:58

---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2133716
Terminapor
I'll see you rise.
Posté le 29-03-2012 à 15:29:12  profilanswer
 

On est obligé d'être sur VS pour utiliser ce sdk ?


---------------
Perhaps you don't deserve to breathe
n°2133720
gilou
Modérateur
Modzilla
Posté le 29-03-2012 à 16:01:00  profilanswer
 

Si c'est un ensemble de dlls il n'y a pas de raison à priori. Mais je répondais à la question posée:

Citation :

Et surtout comment l'installer pour que ça marche quand j'essaie de coder des trucs sous VS 2010 !


A+,


---------------
There's more than what can be linked! --    Iyashikei Anime Forever!    --  AngularJS c'est un framework d'engulé!  --
n°2135666
theshockwa​ve
I work at a firm named Koslow
Posté le 11-04-2012 à 00:31:54  profilanswer
 

Le sdk microsoft propose des libs pour c++ et c# sous visual. Ensuite, effectivement, ca pointe vers des dll qu'on peut utiliser avec n'importe quel langage. C'est juste plus pratique de pouvoir se referer simplement a la doc du sdk


---------------
last.fm
n°2139167
Sylphique
Posté le 26-04-2012 à 10:51:22  profilanswer
 

AH j'avais oublié de vous remercier pour les réponses !
 
Merchii ! :)


Aller à :
Ajouter une réponse
  FORUM HardWare.fr
  Programmation
  C++

  À la recherche d'une librairie Kinect opérationnelle !

 

Sujets relatifs
Recherche geographique sur mon site webRecherche un cours de tuning sql
Recherche cours perfectionnement SQLrecherche d'algo convertissant des dates en toutes lettres
Aucun script moteur de recherche PHP ne marche !!recherche composant graphique java
pb xpath recherche sur un element sans attribut [RESOLU]librairie arithmétique du logiciel CCS
[Résolu][Bash] Recherche ligne par ligne dans un fichier .gzRecherche de chaîne.
Plus de sujets relatifs à : À la recherche d'une librairie Kinect opérationnelle !


Copyright © 1997-2022 Hardware.fr SARL (Signaler un contenu illicite / Données personnelles) / Groupe LDLC / Shop HFR