Raspberry Pi avec Kinect

Quelqu'un pourrait-il obtenir les données de la caméra du Kinect en utilisant un Raspberry Pi ?

Nous aimerions faire un Kinect sans fil en le connectant en utilisant Ethernet ou WiFi. Sinon, faites-moi savoir si vous avez une alternative de travail.

35
demandé sur Cyril 2013-07-19 14:07:51

5 réponses

Pour répondre à votre question, oui, il est possible d'obtenir L'Image et la profondeur sur le Raspberry pi!

Voici comment.

Si vous voulez utiliser uniquement de la vidéo (couleur, pas de profondeur), il y a déjà un pilote dans le noyau! Vous pouvez le charger comme ceci:

modprobe videodev
modprobe gspca_main
modprobe gspca_kinect

Vous obtenez un nouveau/dev / videoX et pouvez l'utiliser comme n'importe quelle autre webcam!

Si vous avez besoin de profondeur (c'est pourquoi vous voulez un kinect), mais que vous avez un noyau plus ancien que 3.17, vous avez besoin d'un autre pilote qui peut être trouvé ici: https://github.com/xxorde/librekinect . Si vous avez 3.17 ou plus récent, la fonctionnalité librekinect est activée en basculant l'indicateur depth_mode en ligne de commande du module gspca_kinect:

modprobe gspca_kinect depth_mode=1

Les deux fonctionnent bien sur le Raspbian actuel.

38
répondu xxorde 2016-03-07 10:12:21

Si vous parvenez à brancher votre appareil photo kinect sur le Raspberry Pi, installez d'abord guvcview pour voir si cela fonctionne.

sudo apt-get install guvcview

Ensuite, tapez guvcview dans le terminal et il devrait ouvrir un panneau d'options et la vue de contrôle de la caméra. Si tout cela fonctionne et que vous voulez obtenir les données brutes pour faire des traitements d'image, vous devrez compiler OpenCV (cela prend 4 heures de compilation) et après cela, vous aurez juste besoin de programmer ce que vous voulez. Pour le compiler, il suffit de rechercher sur Google, il y a beaucoup de tutoriel.

8
répondu Sven Borden 2013-07-26 18:16:25

Eh bien, pour autant que je sache, il n'y a pas d'histoires réussies sur l'obtention d'images de Kinect sur RaspberryPi.

Sur github, il y a un problème dans le référentiel libfreenect à propos de ce problème. Dans ce commentaire Utilisateur zarvox dire que RPi n'a pas assez de puissance pour gérer les données de Kinect.

personnellement, j'ai essayé de connecter Kinect avec RPi en utilisant OpenNI2 et Sensor , mais sans succès.{[14] } et ce n'était pas une décision intelligente parce que c'est impossible de travailler avec Microsoft Kinect sur Linux en utilisant OpenNI2 en raison de restrictions de licence (Eh bien, en fait, il est pas si impossible. Vous pouvez utiliser OpenNI2-FreenectDriver + OpenNI2 sous Linux pour brancher Kinect. Mais de toute façon, Cette solution de contournement ne convient pas à RaspberryPi, car OpenNI2-FreenectDriver utilise libfreenect).

Mais de toute façon il y a quelques bons tutoriels sur la façon de se connecter ASUS Xtion Live Pro {[4] } à RaspberryPi: Un, deux . Et comment pour connecter Kinect à CubieBoard2 plus puissant basé sur arm: trois .

5
répondu iamantony 2013-11-30 12:33:23

Si vous avez l'intention de faire de la robotique, le plus simple est d'utiliser la bibliothèque Kinect sur ROS ici

Sinon, vous pouvez essayer OpenKinect, ils fournissent la bibliothèque libfreenect qui vous permet d'accéder aux accéléromètres de l'image et bien plus encore

OpenKinect sur Github ici

OpenKinect Wiki ici

Ici est un bon exemple avec le code et tous les détails dont vous avez besoin pour vous connecter au Kinect et faire fonctionner les moteurs en utilisant libfreenect.

Vous aurez besoin d'un concentrateur USB alimenté pour alimenter le Kinect et installer libusb.

Une deuxième possibilité est d'utiliser la bibliothèque OpenNI qui fournit un SDK pour développer des bibliothèques midleware pour s'interfacer avec votre application il y a même une lib OpenNi pour le traitement ici .

2
répondu kolergy 2013-09-02 22:50:52

Oui, vous pouvez utiliser Kinect avec raspberry pi dans un petit projet robotique. J'ai fait ce travail avec la bibliothèque openkinect. mon expérience est que vous devriez vérifier votre Raspberry pi et surveiller la tension pi, pas le temps à basse tension. vous devez préciser votre codage pour utiliser un traitement inférieur et exécuter votre code plus rapidement. parce que si votre code avait un problème, votre traitement d'image serait la réponse plus lente aux objets. https://github.com/OpenKinect/libfreenect https://github.com/OpenKinect/libfreenect/blob/master/wrappers/python/demo_cv2_threshold.py

1
répondu iman ansari 2017-12-19 09:09:43