330 likes | 442 Views
Prenez le contrôle de Kinect pour Windows SDK (Beta). Agenda. SDK & Architecture Buffer vidéo Buffer de profondeur Suivi de squelettes Gestion du son. SDK. Développé par Microsoft Research Utilisation non commerciale uniquement Windows 7 uniquement x86 x64 Managed et C++.
E N D
Agenda • SDK & Architecture • Buffer vidéo • Buffer de profondeur • Suivi de squelettes • Gestion du son
SDK • Développé par Microsoft Research • Utilisation non commerciale uniquement • Windows 7 uniquement • x86 • x64 • Managedet C++
SDK • 3 flux disponibles • Image • Profondeur • Audio • Librairie NUI (Natural User Interface) • Détection automatique • Learning machine
SDK using Microsoft.Research.Kinect.Nui; using Microsoft.Research.Kinect.Audio; kinectRuntime = new Runtime(); kinectRuntime.Initialize(RuntimeOptions.UseDepthAndPlayerIndex | RuntimeOptions.UseSkeletalTracking | RuntimeOptions.UseColor);
Démonstration Initialisation du SDK
Agenda • SDK & Architecture • Buffer vidéo • Buffer de profondeur • Suivi de squelettes • Gestion du son
Buffer vidéo • Résolutions : • 640x480 • 1280x1024 • Formats : • RGB • YUV • Données fournies au travers d’un stream • Evénementiel / Pooling
Buffer vidéo public class ColorStreamManager { public BitmapSourceColorBitmap { get; private set; } public void Update(ImageFrameReadyEventArgs e) { PlanarImage Image = e.ImageFrame.Image; ColorBitmap = BitmapSource.Create(Image.Width, Image.Height, 96, 96, PixelFormats.Bgr32, null, Image.Bits, Image.Width * Image.BytesPerPixel); } }
Démonstration – Kinect Light Sabre Affichage du flux video
Agenda • SDK & Architecture • Buffer vidéo • Buffer de profondeur • Suivi de squelettes • Gestion du son
Buffer de profondeur • Résolutions • 320x240 • 80x60 • Données sous forme de stream • Evénementiel / Pooling • 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 – Kinect Keyboard Simulator Affichage du flux de profondeur
Agenda • Architecture • Buffer vidéo • Buffer de profondeur • Suivi de squelettes • Gestion du son
Suivi des squelettes • Reconnaissance immédiate • Evénementiel / Pooling • 4 squelettes détectés • Chaque squelette donne sa position
Suivi des squelettes • 2 squelettes suivis (tracked) • Liste de joints (points de contrôles) • Chaque position donne également sa qualité (.w entre 0 et 1) • Notion de TrackingID
Suivi des squelettes • Service de filtrage des données • Correction • Lissage kinectRuntime.SkeletonEngine.TransformSmooth= true; varparameters = new TransformSmoothParameters { Smoothing = 1.0f, Correction = 0.1f, Prediction = 0.1f, JitterRadius = 0.05f, MaxDeviationRadius = 0.05f }; kinectRuntime.SkeletonEngine.SmoothParameters= parameters;
Démonstration - Kinect Keyboard Simulator Suivi du squelette
Agenda • Architecture • Buffer vidéo • Buffer de profondeur • Suivi de squelettes • Gestion du son
Gestion du son • Kinect c’est aussi: • Un groupe de 4 microphones (Microphone array) • Des algorithmes de • Réduction du bruit ambiant • Annulation de l’écho • Beamforming : • Trackingde la source sonore • Compatible avec Microsoft Speech API
Pour aller plus loin • http://msdn.microsoft.com/fr-fr/windows/sdk-kinect • http://blogs.msdn.com/b/eternalcoding/archive/2011/06/14/fr-prenez-le-contr-244-le-avec-kinect-pour-windows-sdk.aspx • http://channel9.msdn.com/coding4fun/kinect • http://msdn.microsoft.com/fr-fr/windows/sdk-kinect
Programme de l’après-midi • Kinect2D et détection de la main • Mitsu Furuta / SENSORIT • Applications Kinectées, l’interaction à portée de main • Thierry Bouquain & Pierres-Yves Gardette / UCAYA • Intégration de Kinect SDK pour le pilotage dans une scène 3D temps réel • Benoit Laut / BEWISE • Kinect, Squelette et animations 3D • Simon Ferquel / INFINITE SQUARE • Une vision de la visio-conférence du futur • Niels Freier / WYGWAM • Ardrone& Kinect • Niels Freier & Mickael Thumerel / MS LABS EPITECH • Bière/Pizza
Gagnez de superbes tee-shirts! Résolution minimale du buffer de profondeur?
Gagnez de superbes tee-shirts! Fréquence de rafraichissement de la vidéo en 1280x1024
Gagnez de superbes tee-shirts! Donner les 3 valeurs possibles du TrackingStated’un squelette
Gagnez de superbes tee-shirts! Combien de bits sont utilisés par pixel dans le buffer de profondeur pour identifier l’utilisateur courant ?
Gagnez de superbes tee-shirts! Par quoi faut-il masquer 13bits pour obtenir les 3 bits de poids faible
Gagnez de superbes tee-shirts! Combien de points de contrôles par squelette ?
Gagnez de superbes tee-shirts! Nom de l’artiste qui réalise les dessins de nos tee-shirts
Gagnez de superbes tee-shirts! Combien de développeurs présentsaujourd’hui