Kinect Explorer - Tanguy de Chanterac
Download
Report
Transcript Kinect Explorer - Tanguy de Chanterac
PRENEZ LE CONTRÔLE AVEC
KINECT
26 janvier 2012
Qui suis-je ?
Tanguy de Chantérac
Etudiant en 3ème année
Ms-Lab : Laboratoire des technologies Microsoft de
l’EPITECH
Windows
Phone 7
SharePoint
XNA
Kinect
Kinect ? Qu’est ce que c’est ?
Kinect est une caméra créée par Microsoft
La première caméra de détection et retranscription
de mouvement.
Contrôler des logiciels et des jeux sans souris ni
clavier
Interface naturelle (NUI)
Pourquoi est elle si populaire ?
La première caméra de détection et retranscription de
mouvement.
Beaucoup d’avantages par rapport à la wii / PSMove (pas
de wiimote, aucune manette)
Meilleure precision que ses concurents
Beaucoup de jeu sur Xbox 360
Dance Central
Kinect Sport
Kinect Adventure
Fruit Ninja
…
Développer avec Kinect
Il est possible de développer des applications
pour Kinect (depuis 8 mois déjà …)
Télécharger le SDK Kinect et l’installer
Utilisation de Visual Studio comme IDE
Apprendre / Utiliser C# et WPF
RTFM (Lire le manuel)
Prendre le contrôle avec Kinect
SDK et Architecture
Buffer Video
Buffer de Profondeur (Depth)
Suivi de Squelettes
Gestes
Gestion du son
SDK
Développé par Microsoft Research
Utilisation non commerciale uniquement
Windows 7 et Windows 8 (uniquement)
x86
x64
C# et C++
Un SDK commercial a été annoncé pour le 1er
février 2012 (sortie de la Kinect for Windows)
Anatomie
Limites d’utilisations
Entre 1,2 et 3,5 mètres
Initialiser la caméra
//on declare un nouveau Runtime
Runtime _nui;
foreach (var kinect in Runtime.Kinects)
{
if (kinect.Status == KinectStatus.Connected)
{
_nui = kinect;
break;
}
}
if (Runtime.Kinects.Count == 0)
throw new ArgumentException(" No Kinect Connected");
else
{
try
{
_nui.Initialize(RuntimeOptions.UseDepthAndPlayerIndex |
RuntimeOptions.UseSkeletalTracking |RuntimeOptions.UseColor);
Runtime.Kinects.StatusChanged += KinectStatusChanged;
}
catch (exception ex)
{ //traitement de l’exception }
Démonstration
Initialisation du SDK
Buffer Vidéo
Résolutions :
640
* 480
1280 * 1024
Format :
RGB
YUV
Données fournies au travers d’une stream
Evénementiel
Démonstration
Affichage du flux vidéo
Buffer de profondeur
Buffer de profondeur
Résolutions
640x480
320x240
80x60
Données sous forme de stream
Evénementiel
Stockage sur 13 bits
10
bits pour la distance en millimètres depuis le
capteur
3 bits pour donner l’index de la personne reconnue
Démonstration
Affichage de la depth
stream
Démonstration
Combinaison de la depth
stream et de la vidéo
Suivi des squelettes
Reconnaissance immédiate
Evénementiel
4 squelettes détectés
Chaque squelette donne sa position
2 squelettes suivis (tracked)
Liste de joints (points de contrôles)
Chaque position donne également sa qualité (.w entre 0 et 1)
Points de contrôles
Démonstration
Suivi du squelette
Gestures et postures
Techniques de détection des gestures
Algorithmes
Postures
Problématiques
Quand
commencer ?
Quand finir ?
Gérer les mouvements parasites ?
Gestion du son
Kinect c’est aussi
Un
groupe de 2 microphones
Des algorithmes de :
Réduction
du bruit ambiant
Annulation de l’echo
Beamforming
Tracking
de la source sonore
Compatible
avec MS Speech
Problèmes
Latence (1280 x 1024)
Contrôle vocal : pas encore au point
Gestes parasites
SDK limité (pour instant).
Précision parfois discutable.
SDK Final (Kinect For Windows)
Nouveautés :
Integration de Microsoft speech.
Tracking du squelette amélioré.
Mapping des API.
Les API ont été renommées.
Une nouvelle caméra (250$ :s)
Un nouvel event (AllFrameReady)
Une librairie de gestures / Postures ?
Des outils de debugs ?
Et après ?
D’autres idées:
Mouse
move : une dll pour simplifier l’utilisation de la
souris avec Kinect.
Krisk : un jeu vidéo de Risk qui fonctionne avec Kinect
sur PC.
SharePoint Explorer : naviguer dans une bibliothèque
SharePoint, ouvrir des fichiers, zoomer, se déplacer.
Votre
imagination est la seule limite.
Questions ?
Pour aller plus loin
Acheter une Kinect
Blog officiel :
http://blogs.msdn.com/b/kinectforwindows/
Site officiel : http://kinectforwindows.org/
Forum officiel : Google « Kinect forum msdn »
Mon blog : http://tdechanterac.fr
Kinect Toolbox
http://channel9.msdn.com/coding4fun/kinect