Kinect and brave new applications – Kinect SDK v.1.7 UPDATE

Slides:



Advertisements
Presentazioni simili
Windows Per questa parte: Elementi dell'interfaccia grafica.
Advertisements

Teoria e Tecniche del Riconoscimento
1 SOCIAL MEDIA PLATFORM FOR MARKETERS. 2 Vitrue è una piattaforma di social marketing (SRM Dashboard) impiegata per aiutare i brand a catturare il vasto.
Interfacce Java.
Midrange Modernization Conference 1 Scenari evolutivi per le soluzioni basate su AS/400 Walter Poloni Direttore Developer & Platform Evangelism Microsoft.
Luca Bianchi Windows Development Day Bologna 28 gennaio 2005 SQL Server Desktop Engine (MSDE) & SQL Server 2005 Express.
ASP.NET – Web Forms Davide Vernole.NET MVP. Di cosa parleremo Introduzione ad ASP.NET ASP.NET, dietro le quinte Componenti principali di una applicazione.
Il filmato digitale Lidia Falomo. Video Filmato: successione di frame.
E.Mumolo, DEEI Player Stage E.Mumolo, DEEI
Seam.
E Windows SharePoint Services 2.0 Ivan Renesto Overview how to use Windows SharePoint Services.
Microsoft Robotics Studio Marco Petrucco Microsoft Student Partner - Udine.
Model – View - Controller
prompt> java SumAverage
Citrix Metaframe. Metaframe è la soluzione client-server prodotta dalla Citrix in grado di rendere disponibili applicazioni e desktop a qualsiasi dispositivo.
Programming with JXTA Hello World Peer discovery Peer Group discovery Creating Peer group Joining a Peer Group.
Metadati gestionali e amministrativi per oggetti digitali nativi Antonio Scolari Seminario nazionale sui metadati Roma, 3 aprile 2001.
Esercizio · Analizza criticamente le linee guida del modulo. Ritieni ci siano sovrapposizioni o ridondanze? Quali? Ne proporresti una semplificazione?
FONDAMENTI DI INFORMATICA III WfMC-1. FONDAMENTI DI INFORMATICA III WfMC-2 WFMC Cose WfMC Workflow Management Coalition (WfMC), Brussels, è unorganizzazione.
Componenti dell’architettura Oracle
Articoli e codice: Blog: Profilo MVP:
Attribution-NonCommercial-ShareAlike SQL Server.
MIC 2008, Roma Antonio Pistoia Università Politecnica delle Marche MOODLELab Uno strumento per MOODLE per la gestione dei telelaboratori durante i corsi.
Progetto Rover – Fase 1. Obiettivo e Vincoli Obiettivo è creare applicazione capace di controllare in remoto un Rover, dotato di torretta sensoriale e.
Un esempio: Registrazione e lettura di dati in un file
Il sistema operativo Sistema operativo (in breve) –È costituito dai programmi di gestione delle operazioni più elementari del computer –… gestione di vari.
Argomento: S.O.WINDOWS XP PRO
Sistema di gestione, documentazione di convegni, presentazioni multimediali.
Na-If Man Machine Interface.
Venezia Confartigianato. Gli ultimi 10 anni Oggi.
Lambiente operativo. 2 Per avviare e poter utilizzare il computer è necessario un particolare programma che si chiama sistema operativo. Windows è un.
Corso di Elementi di Informatica
© 2008 WS (WebScience srl) – All rights reserved WS Tech workshop Software Construction.
Primi passi con Windows: Gestione del Desktop Barra Applicazioni Menu Avvio ISTITUTO COMPRENSIVO N.7 - VIA VIVALDI - IMOLA Via Vivaldi, Imola.
Sito IntergruppoParma.it Nuovo Intergruppo Parma.
Custom Apps Development
Presenta Progetto Hyper-Club. Hyper-code Via Domenico Mercante 6, Verona (VR) – Tel Cell mail. Chi.
Cosa vuol dire «Embedded»? Valter
TCS Il video digitale Lidia Falomo Dipartimento di Fisica Università di Pavia.
Sviluppo di una Xlet per la TV digitale terrestre Vademecum della regione marche 2006 Ventura Luca.
& Presentano: BUILD live – Torino Introduzione a Microsoft Kinect Gianni Rosa Gallina
Architettura delle GPU e
Fare clic per modificare lo stile del titolo Fare clic per modificare stili del testo dello schema – Secondo livello Terzo livello – Quarto livello » Quinto.
Modulo 1 bis Menù Incolla Esercitazione Un computer è quasi umano, a parte il fatto che non attribuisce i propri errori a un altro computer. (Anonimo)
Firenze – Festival della Creatività 2009 Comm.it s.r.l. – Ing. Davide Rogai, Ph.D. – Software >> eyelander tracking semplice con il tuo cellulare.
TAQ Identità oggetto Contenuto Modalità di uso Nome oggetto: numero
Moduli o Form I Moduli permettono all'utente di immettere informazioni...
Implementazione della modalità SplitMAC del protocollo CAPWAP
INTERNET Antonio Papa Classe 2^ beat I.S.I.S. G. Meroni a.s. 2007/2008.
AC mobile Versione 1.1 AC mobile Guida per l’utente
SoLo mobile client in depth: Mercato mobile, licenze, deploy, uso, features.
WPF per il client Desktop
Microsoft Kinect IR PATTERN PROJECTOR IR CAMERA RGB CAMERA.
14° Workshop – DotNetMarche :: Castelfidardo, 16 Aprile 2010 Introduzione ai framework per IoC / DI e AOP.
Attribution-NonCommercial-ShareAlike Le novità
Scoprirete che su Office non si può solo contare ma anche sviluppare.
Personalizzazione e porting delle procedure esterne connesse ad Aleph Il caricamento degli utenti della circolazione da files esterni Modifiche introdotte.
ISTITUTO DI SCIENZE E TECNOLOGIE DELLA COGNIZIONE Piero Cosi SEZIONE DI PADOVA - FONETICA E DIALETTOLOGIA Via Martiri della libertà, 2 – adova (Italy)
L4 Tecniche di Background Subtraction
©2003 Genesys Telecommunications Laboratories, Inc. Genesys Enterprise Telephony Software (GETS) Stefano Galli Genesys Sales Consultant Stefano Galli Genesys.
IIS7 Media Services Piergiorgio Malusardi IT Pro Evangelist
VB.NET Sviluppo Applicazioni Desktop
Visual Studio Tools for Office: Developer Solutions Platform Fulvio Giaccari MCSD.NET / MCT Responsabile Usergroup ShareOffice Blog:
Corso di Web Services A A Domenico Rosaci Patterns di E-Business D. RosaciPatterns per l'e-Business.
Negli ultimi anni, la richiesta di poter controllare in remoto la strumentazione e cresciuta rapidamente I miglioramenti nell’hardware e nel software insieme.
Collection & Generics in Java
KINECT FOR WINDOWS PROVARSI I VESTITI CON IL KINECT.
Azure: Mobile Services e Notification Hub ANDREA GIUNTA.
JDBC Java DataBase Connectivity SISTEMI ITIS B. CASTELLI Anno Scolastico
Video Streaming dal player standard Android verso device non convenzionali GDG Fest Roma – 2014 – Matteo Bonifazi & Alessandro Martellucci.
Transcript della presentazione:

Kinect and brave new applications – Kinect SDK v.1.7 UPDATE Igor Antonacci http://blog.technothink.net/ Twitter: @bitbreaker Igor.antonacci@dotdotnet.org

User Group .NET Emilia-Romagna La DotDotNet è un'associazione culturale con il compito di promuovere la più ampia diffusione dell'informatica, della telematica, della multimedialità e dei collaborative tools, con particolare attenzione allo sviluppo di software su piattaforma Microsoft .NET. (dall’art. 1 dello statuto DotDotNet) Associazione no-profit Opera in tutta la regione Gruppo di professionisti, studenti e appassionati. Modulo di adesione Feedback

Agenda NUI – Natural User Interfaces Kinect Overview Kinect SDK Demo

NUI – Natural User Interfaces HCI – Human Computer Interaction è un argomento “HOT” in questo momento; sono nati nuovi tipi di interazioni Uomo-Macchina che interessano il grande pubblico E gli sviluppatori Sono state vendute più chitarre virtuali che reali nel 2009

Interfacce Uomo-Macchine: Storia – CLI

Interfacce Uomo-Macchine: Storia – GUI

TouchTouch

Object Recognition

Gestures

Voice

Augmented Reality

Touchless

Kinect – Overview Com’è fatta / Sensori e Componenti Architettura HW Come funziona

Kinect – dall’esterno Camera VGA 640x480 (CMOS). Infrared Camera 640x840 (CMOS). Proiettore Infrarossi Tilt Motorizzato. Batteria di 4 Microfoni RGB CAMERA MULTI-ARRAY MIC MOTORIZED TILT 3D DEPTH SENSORS

Kinect – Come funziona – 1

Kinect – Come funziona – 2

Kinect: SDK & Toolkit Download: http://www.microsoft.com/en-us/kinectforwindows/ L’SDK Include Driver per l’utilizzo su PC (Windows 8, Windows 7, ) API per l’accesso ai sensori, documentazione Toolkit Esempi con codice sorgente (in C# , C++ … ) Face Tracking SDK Miscellanea

Kinect: Architettura SW Kinect SDK – Layer tra HW e Software Flusso di dati “grezzo” e “raffinato”

Kinect: Skeletal Tracking

Kinect: Skeletal Tracking Massimo due “player” riconosciuti contemporaneamente “Joints” <x, y, z> per ogni giocatore / utente Ogni “Joint” ha degli stati Tracked – Il riconoscimento è “accurato” Not Tracked – Non si è giunti al riconoscimento di quel joint Inferred – L’accuratezza è minima, l’elemento è coperto e non facilmente riconoscibile  interpolato

Kinect SDK: Primi passi Nuovo Progetto WPF o WinForms Referenziare la DLL: Microsoft.Kinect Scrivere codice  nui = Runtime.Kinects[0]; nui.Initialize(RuntimeOptions.UseSkeletalTracking); nui.SkeletonFrameReady += new EventHandler<SkeletonFrameReadyEventArgs>(nui_Skeleto nFrameReady);

Kinect SDK: Skeletal Frame Rappresenta il singolo frame con riconoscimento scheletrico

Kinect SDK: Video Frame Stream Video dal sensore video a colori del Kinect E’ necessario “aprirlo” (inizializzarlo) prima di ricevere I frame nui = Runtime.Kinects[0]; nui.Initialize(RuntimeOptions.UseColor); nui.VideoFrameReady += nui_VideoFrameReady; nui.VideoStream.Open(ImageStreamType.Video, 2, ImageResolution.Resolution640x480, ImageType.Color);

Kinect SDK: Video Frame – 2 Ogni frame della scena è rappresentato da un oggetto di tipo PlanarImage I pixel della scena sono rappresentati, ognuno, con 4 byte NON utilizzabile come Source di una Image (nè in WPF, nè in WinForms) Coding4Fun.Kinect.Wpf – ToBitmapSource() extension method image1.Source = e.ImageFrame.ToBitmapSource();

Kinect SDK: Depth Frame – 1 “Fotogramma” di profondità Ogni coppia di byte rappresenta la distanza per il pixel corrispondente (per ogni giocatore nella scena) nui = Runtime.Kinects[0]; nui.Initialize(RuntimeOptions.UseDepth); nui.DepthFrameReady += nui_DepthFrameReady nui.DepthStream.Open(ImageStreamType.Depth, 2, ImageResolution.Resolution640x480, ImageType.Depth);

Kinect SDK: Depth Frame – 2 Ogni pixel della scena è rappresentato da DUE byte I due byte possono contenere due informazioni principali ID del Player (in caso di più utenti sulla scena) La distanza dell’oggetto (in mm) L’ID dell’utente/giocatore è presente se: nui.Initialize(RuntimeOptions.UseDepthAndPlayerIndex); … assente nel caso in cui nui.Initialize(RuntimeOptions.UseDepth);

What’s new – Kinect SDK 1.7 Nuova versione dell’SDK rilasciata ad Aprile 2013 Introduzione di un (più) layer allo stack precedente Kinect Interaction Kinect Fusion Matlab / OpenCV Integration Nuovo Kinect Toolkit Controlli WPF / Nativi per l’interazione attraverso Kinect Interaction Hand grip gesture Push to Press control

Kinect Interaction – Architettura Layer “on-top” della NUI Gestione di gesture “comuni” in Applicazioni / Giochi WPF Native Managed Native

Kinect Interaction – Toolkit Kinect Toolkit – Open Source (Codeplex) Controlli “aggiuntivi” – “on top” Kinect Interaction Libraries Astraggono dalla gestione delle “gesture” Eventi “Click” come in un controllo WPF / WinForm  Nessuna gestione dei movimenti e dei “sensori” What’s NEW (principali Controlli) KinectRegion – contenitore per controlli “Interaction” KinectTileButton – Bottone “Kinect” – Push to press KinectScrollViewer – Scrollview con gestione “Hand Grip” KinectUserViewer – Piccolo “monitor” per debug del sensore di profondità KinectSensorChooserUI – Gestione (multi) sensore (riduce codice di inizializzazione)

Kinect: DEMO – Let’s play…with code!

DEMO Kinect SDK 1.7 – Fusion Scansione TRIDIMENSIONALE della scena Identificazione degli oggetti nella scena…3D . Utilizzo “real-time” (Realtà aumentata) SOLO con GPU Desktop-level GPU Mobile  Static scene render DEMO

Kinect SDK 1.7 – Matlab / OpenCV Utilizzo / Integrazione con OpenCV – Computer Vision Gestione del flusso “depth” con Matlab

Kinect: Audio API Gestione “managed” dell’Audio Start – Capture – Stop dell’audio con riconoscimento della direzione Kinect Audio Demo tra gli esempi dell’SDK Riconoscimento vocale se utilizzato insieme alle Speech API

Possibili sviluppi commerciali (€€€) Visualizzazioni scientifiche Healthcare Games

Risorse Online Kinect SDK http://www.microsoft.com/en-us/kinectforwindows/ Coding4Fun – Kinect http://channel9.msdn.com/coding4fun/kinect Coding4Fun – Kinect for Windows SDK Quickstart http://channel9.msdn.com/Series/KinectSDKQuickstarts How does it works – Kinect http://gilotopia.blogspot.com/2010/11/how-does- kinect-really-work.html

Q&A

CONCORSO … senza premi  SORPRESA!!! CONCORSO … senza premi 