SlideShare una empresa de Scribd logo
1 de 57
KINECT FOR WINDOWS
It’s All NUI to me:
Building Apps with the Microsoft Kinect SDK
David Silverlight
Founder and Chief Software Architect
TheSilverlightGroup.com
IsYourWebMasterDead.com
KINECT FOR WINDOWS
Agenda
• NUI – What?
• Demo’s – See what all the hullabaloo is about
• Getting Started/Kinect Explorer/QuickStarts
• Building Your Own Kinect apps.
• (Video, Depth, Skeleton, Audio)
• Resources
KINECT FOR WINDOWS
Kinect: Setter of World Records!
KINECT FOR WINDOWS
And Some Disasters
KINECT FOR WINDOWS
It’s in the headlines
KINECT FOR WINDOWS
What is NUI?
• Natural User Interface
• Common term used by designers and
developers of computer interfaces to refer to a
user interface that is effectively invisible, or
becomes invisible with successive learned
interactions, to its users
KINECT FOR WINDOWS
What is NUI?
• An Invisible Interface.
• The Content is the Interface.
• Removing the Proxy
• Direct Manipulation
• Gestural interfaces
KINECT FOR WINDOWS
Seeing is believing – Kinect Development
Allows you to capture
your movements and
opens up a whole new
world to animators on
a tight budget.
12 Best Kinect Hacks Personal Data Mirror
Catch up with the
latest headlines,
weather and health
all whilst brushing
your teeth
Real Time Motion
Capture with XNA
Sample showing just
what people are
doing with the
Kinect
KINECT FOR WINDOWS
Fitnect Virtual Vacation
Now another reason
to never leave the
house.
Interactive Fitting
room showing how
Kinect and business
can connect.
Seeing is believing – Kinect Development
KINECT FOR WINDOWS
What can you do with Kinect on a PC or Mac ?
KINECT FOR WINDOWS
RGB CAMERA
MULTI-ARRAY MIC MOTORIZED TILT
3D DEPTH SENSORS
KINECT FOR WINDOWS
Getting Started: Building Your Own Apps
• Designed to get you started
• Assumes you have some programming experience
• Managed API - Concepts work in both VB/C#
KINECT FOR WINDOWS
Kinect USB cable
KINECT FOR WINDOWS
System Requirements
• You must run applications that are built by using the Kinect for Windows
SDK in a native Windows environment. You cannot run applications in a
virtual machine, because the Microsoft Kinect drivers and this SDK must be
installed on the computer that is running the application.
• Supported Operating Systems and Architectures
• Windows 7 (x86 or x64)
• Hardware Requirements
• Computer with a dual-core, 2.66-GHz or faster processor
• Windows 7–compatible graphics card that supports Microsoft® DirectX® 9.0c
capabilities
• 2 GB of RAM
• Kinect for Xbox 360® sensor—retail edition, which includes special USB/power cabling
KINECT FOR WINDOWS
System Requirements
• Software Requirements
• Microsoft Visual Studio® 2010 Express or other Visual Studio 2010 edition
• Microsoft .NET Framework 4.0 (installed with Visual Studio 2010)
• For C++ SkeletalViewer samples:
• DirectX Software Development Kit, June 2010 or later version
• DirectX End-User Runtime Web Installer
• For Speech sample (x86 only):
• Microsoft Speech Platform - Server Runtime, version 10.2 (x86 edition)
• Microsoft Speech Platform - Software Development Kit, version 10.2 (x86
edition)
• Kinect for Windows Runtime Language Pack, version 0.9
(acoustic model from Microsoft Speech Platform for the Kinect for Windows
SDK Beta)
KINECT FOR WINDOWS
It all starts here: http://www.microsoft.com/en-us/kinectforwindows/
Developing your own Kinect aps
KINECT FOR WINDOWS
Kinect for Windows SDK Quickstarts
• http://channel9.msdn.com/Series/KinectQuickstart - All are
great, IMHO
• The Kinect Explorer is new from the Beta
• Kinect for Windows SDK Browser.
• Installing and Using the Kinect Sensor
• Setting up your development environment
• Skeletal Tracking fundamentals
• Camera Fundamentals
• Working with Depth Data
• Audio Fundamentals
KINECT FOR WINDOWS
SETTING UP
YOUR DEVELOPMENT
ENVIRONMENT
KINECT FOR WINDOWS
Setting up your Development Environment
Add our references to:
- The Microsoft.Samples.Kinect.WpfViewers Project
- The Coding4Fun.Wpf.dll
Reference the assembly:
• using Microsoft.Kinect;
KINECT FOR WINDOWS
KINECT API BASICS
• Manage Kinect state
• Connected
• Enable Color, Depth, Skeleton
• Start Kinect
• Get Data
• Events - AllFramesReady
• Polling – OpenNextFrame
KINECT FOR WINDOWS
RESOURCES
• Install Kinect Explorer
• KinectWpfViewers
• Coding4Fun Toolkit
• Skeletal scaling
KINECT FOR WINDOWS
SETTING UP YOUR DEV
ENVIRONMENT
DEMO
KINECT FOR WINDOWS
Setting the
Camera Tilt Angle
CAMERA
FUNDAMENTALS
KINECT FOR WINDOWS
Setting the Camera Tilt Angle
• Warning: The tilt mechanism in the sensor array is not rated for
frequent use. Your code should not make calls to tilt the device more
than 15 times in any two-minute window. Changing the tilt too often
results in an error message from the function.
• To adjust the tilt or pitch, set the ElevationAngle property to a value
between –27 (Camera.ElevationMinimum) and +27
(Camera.ElevationMaximum). The code below sets the camera to the
maximum elevation:
• kinectSensorChooser.Kinect.ElevationAngle =
Convert.ToInt16(slider1.Value);
KINECT FOR WINDOWS
CAMERA
FUNDAMENTALS
KINECT FOR WINDOWS
RESOLUTIONS
• Color
• 12 FPS: 1280X960 RGB
• 15 FPS: Raw YUV 640x480
• 30 FPS: 640x480
• Depth
• 30 FPS: 80x60, 320x240, 640x480
KINECT FOR WINDOWS
Camera Data
KINECT FOR WINDOWS
CAMERA DATA
• Events return ImageFrame
• PixelDataLength
• FrameNumber
• Timestamp
• Dimensions: Height, Width
• Use AllFramesReady event to synchronize
KINECT FOR WINDOWS
CAMERA FUNDAMENTALS
DEMO
KINECT FOR WINDOWS
WORKING WITH
DEPTH DATA
KINECT FOR WINDOWS
DEPTH DATA
• Returns the distance and player for every pixel
• Ex: 320x240 = 76,800 pixels
• Distance
• Distance in mm from Kinect ex: 2,000mm (6.56 feet)
• Player
• 1-6 players
KINECT FOR WINDOWS
MODE
Mode Depth & Player Center Hip Joint Other 19 Joints
Default Yes Yes Yes
Near Yes Yes No, for v1.0
KINECT FOR WINDOWS
DISTANCES
1.3’ 2.6’ 9.8’ 13.1’ 26.2’
.4 .8 3 4 8
Default
Mode
Near
Mode
Feet
Meters
KINECT FOR WINDOWS
FORMULAS
• Distance Formula
int depth = depthPoint >> DepthImageFrame.PlayerIndexBitmaskWidth;
• Player Formula
int player = depthPoint & DepthImageFrame.PlayerIndexBitmask;
KINECT FOR WINDOWS
WORKING WITH DEPTH DATA
DEMO
KINECT FOR WINDOWS
SKELETAL
TRACKING
FUNDAMENTALS
KINECT FOR WINDOWS
Joints
• Maximum two players tracked at once
• Six player proposals
• Each player with set of <x, y, z> joints in meters
• Each joint has associated state
• Tracked, Not tracked, or Inferred
• Inferred - Occluded, clipped, or low confidence joints
• Not Tracked - Rare, but your code must check for this state
KINECT FOR WINDOWS
Skeleton Data
KINECT FOR WINDOWS
Skeleton API
KINECT FOR WINDOWS
SKELETAL TRACKING
DEMO
KINECT FOR WINDOWS
AUDIO
FUNDAMENTALS
KINECT FOR WINDOWS
QUICKSTART SERIES
• Installing and Using the Kinect Sensor
• Setting up your Development Environment
• Camera Fundamentals
• Working with Depth Data
• Skeletal Tracking Fundamentals
• Audio Fundamentals
KINECT FOR WINDOWS
SOUND POSITION
• Sound Source Angle – the angle and confidence level of where
audio is coming from
• Beam Angle – The angle used to record audio that you can set as a
“directional microphone”
-50 0 +50
KINECT FOR WINDOWS
RECORDING
• KinectAudioSource audio buffer
• Use Echo Cancellation to not record PC sound
KINECT FOR WINDOWS
SPEECH RECOGNITION
• Grammar – What we are listening for
• Code – GrammarBuilder, Choices
• Note: Ensure AutomaticGainControl = false
KINECT FOR WINDOWS
GRAMMAR
<!-- Confirmation_Yes._value: string ["Yes"]
-->
<rule id="Confirmation_Yes" scope="public">
<example> yes </example>
<example> yes please </example>
<one-of>
<item> yes </item>
<item> yeah </item>
<item> yep </item>
<item> ok </item>
</one-of>
<item repeat="0-1"> please </item>
<tag> out._value = "Yes";</tag>
var grammar = new Choices();
grammar.Add(“yes please");
grammar.Add(“yes");
grammar.Add(“yeah");
grammar.Add(“ok");
KINECT FOR WINDOWS
MULTI-MODAL FEEDBACK
• Engagement model
– Mic indicator for speech-enabled menus
– Keyword to engage
• Feedback and confirmation
KINECT FOR WINDOWS
Audio Data
KINECT FOR WINDOWS
AUDIO
DEMO
KINECT FOR WINDOWS
The Future of Kinect
• Better close up
KINECT FOR WINDOWS
Gesture Libraries
KINECT FOR WINDOWS
Gesture Libraries
KINECT FOR WINDOWS
Kinect version of Siri (other CodePlex)
KINECT FOR WINDOWS
KINECT FOR WINDOWS
Resources
• Coding 4 Fun - Coding4Fun Kinect Toolkit
• OpenSource Projects
• SilverlightKinect
KINECT FOR WINDOWS
What we have learned
• Examples of the amazing things that can be
done with the Kinect
• How amazing the Kinect Device is, equivalent to
$200,000 in capabilities
• How to create our own Kinect applications,
Video, Skeletal and Audio tracking.
• The future of Kinect
KINECT FOR WINDOWS
Thank You
• David Silverlight
• David@TheSilverlightGroup.com

Más contenido relacionado

La actualidad más candente

xbox one #infusc6
xbox one #infusc6xbox one #infusc6
xbox one #infusc6
renownkev
 

La actualidad más candente (8)

Getting Started with Patching (Patching 101)
Getting Started with Patching (Patching 101)Getting Started with Patching (Patching 101)
Getting Started with Patching (Patching 101)
 
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
Zoom Rooms Kit from Video Conference Gear featuring the Poly EagleEye Directo...
 
Conviva at Inter BEE 2017
Conviva at Inter BEE 2017Conviva at Inter BEE 2017
Conviva at Inter BEE 2017
 
Intel 6th Gen vPro
Intel 6th Gen vProIntel 6th Gen vPro
Intel 6th Gen vPro
 
xbox one #infusc6
xbox one #infusc6xbox one #infusc6
xbox one #infusc6
 
AMD Opteron A1100 Series SoC Launch Presentation
AMD Opteron A1100 Series SoC Launch PresentationAMD Opteron A1100 Series SoC Launch Presentation
AMD Opteron A1100 Series SoC Launch Presentation
 
Sec285 final presentation_joshua_brown
Sec285 final presentation_joshua_brownSec285 final presentation_joshua_brown
Sec285 final presentation_joshua_brown
 
Virtual Video Wall with Mersive Solstice
Virtual Video Wall with Mersive SolsticeVirtual Video Wall with Mersive Solstice
Virtual Video Wall with Mersive Solstice
 

Similar a Building Applications with the Microsoft Kinect SDK

Kinect seminar 120919
Kinect seminar 120919Kinect seminar 120919
Kinect seminar 120919
cs Kang
 
Kinect seminar 121215v1
Kinect seminar 121215v1Kinect seminar 121215v1
Kinect seminar 121215v1
cs Kang
 
Kinect seminar 121027
Kinect seminar 121027Kinect seminar 121027
Kinect seminar 121027
cs Kang
 
PyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using PythonPyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using Python
pycontw
 
Kinect seminar 121208v1(동영상x)
Kinect seminar 121208v1(동영상x)Kinect seminar 121208v1(동영상x)
Kinect seminar 121208v1(동영상x)
cs Kang
 
Kinect seminar 121020v1
Kinect seminar 121020v1Kinect seminar 121020v1
Kinect seminar 121020v1
cs Kang
 
Kinect seminar 121110v1
Kinect seminar 121110v1Kinect seminar 121110v1
Kinect seminar 121110v1
cs Kang
 
Kinect seminar 121103v1
Kinect seminar 121103v1Kinect seminar 121103v1
Kinect seminar 121103v1
cs Kang
 
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
Edge AI and Vision Alliance
 
“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...
“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...
“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...
Edge AI and Vision Alliance
 
Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015
Richard Bronson
 

Similar a Building Applications with the Microsoft Kinect SDK (20)

Kinect seminar 120919
Kinect seminar 120919Kinect seminar 120919
Kinect seminar 120919
 
Kinect seminar 121215v1
Kinect seminar 121215v1Kinect seminar 121215v1
Kinect seminar 121215v1
 
Kinect seminar 121027
Kinect seminar 121027Kinect seminar 121027
Kinect seminar 121027
 
PyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using PythonPyKinect: Body Iteration Application Development Using Python
PyKinect: Body Iteration Application Development Using Python
 
Kinect seminar 121208v1(동영상x)
Kinect seminar 121208v1(동영상x)Kinect seminar 121208v1(동영상x)
Kinect seminar 121208v1(동영상x)
 
Kinect seminar 121020v1
Kinect seminar 121020v1Kinect seminar 121020v1
Kinect seminar 121020v1
 
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architectureIEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
IEEE VR-SEARIS 2014 Keynote - MiddleVR - Philosophy and architecture
 
Kinect seminar 121110v1
Kinect seminar 121110v1Kinect seminar 121110v1
Kinect seminar 121110v1
 
Kinect seminar 121103v1
Kinect seminar 121103v1Kinect seminar 121103v1
Kinect seminar 121103v1
 
The power of Kinect in 10 minutes
The power of Kinect in 10 minutesThe power of Kinect in 10 minutes
The power of Kinect in 10 minutes
 
Nui e biometrics in windows 10
Nui e biometrics in windows 10Nui e biometrics in windows 10
Nui e biometrics in windows 10
 
Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2
 
Nikon film scanners2
Nikon film scanners2Nikon film scanners2
Nikon film scanners2
 
HD CCTV -Arecont Exacq Pivot3.ppt
HD CCTV -Arecont Exacq Pivot3.pptHD CCTV -Arecont Exacq Pivot3.ppt
HD CCTV -Arecont Exacq Pivot3.ppt
 
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
“A Platform Approach to Developing Networked Visual AI Systems,” a Presentati...
 
“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...
“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...
“Visual AI at the Edge: From Surveillance Cameras to People Counters,” a Pres...
 
Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015Richard Bronson Full Resume 2015
Richard Bronson Full Resume 2015
 
Vuzix i wear vr920
Vuzix i wear vr920Vuzix i wear vr920
Vuzix i wear vr920
 
Nvidia Toolkits- DeepStream.pptx
Nvidia Toolkits- DeepStream.pptxNvidia Toolkits- DeepStream.pptx
Nvidia Toolkits- DeepStream.pptx
 
Software and Machine Vision Competencies
Software and Machine Vision CompetenciesSoftware and Machine Vision Competencies
Software and Machine Vision Competencies
 

Más de DataLeader.io

Amazon Aurora Cloud-native Relational Database, Section 2.0
Amazon Aurora Cloud-native Relational Database, Section 2.0Amazon Aurora Cloud-native Relational Database, Section 2.0
Amazon Aurora Cloud-native Relational Database, Section 2.0
DataLeader.io
 
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
DataLeader.io
 

Más de DataLeader.io (11)

An Introduction to Amazon Aurora Cloud-native Relational Database
An Introduction to Amazon Aurora Cloud-native Relational DatabaseAn Introduction to Amazon Aurora Cloud-native Relational Database
An Introduction to Amazon Aurora Cloud-native Relational Database
 
Amazon Aurora Cloud-native Relational Database, Section 2.0
Amazon Aurora Cloud-native Relational Database, Section 2.0Amazon Aurora Cloud-native Relational Database, Section 2.0
Amazon Aurora Cloud-native Relational Database, Section 2.0
 
Amazon Aurora Relational Database Built for the AWS Cloud, Version 1 Series
Amazon Aurora Relational Database Built for the AWS Cloud, Version 1 SeriesAmazon Aurora Relational Database Built for the AWS Cloud, Version 1 Series
Amazon Aurora Relational Database Built for the AWS Cloud, Version 1 Series
 
Kim Schmidt's Resume
Kim Schmidt's ResumeKim Schmidt's Resume
Kim Schmidt's Resume
 
Microsoft DigiGirlz, Teaching Teens About Databases (Trick!)
Microsoft DigiGirlz, Teaching Teens About Databases (Trick!)Microsoft DigiGirlz, Teaching Teens About Databases (Trick!)
Microsoft DigiGirlz, Teaching Teens About Databases (Trick!)
 
The Zen of Silverlight
The Zen of SilverlightThe Zen of Silverlight
The Zen of Silverlight
 
The Fundamentals of HTML5
The Fundamentals of HTML5The Fundamentals of HTML5
The Fundamentals of HTML5
 
How to Build Composite Applications with PRISM
How to Build Composite Applications with PRISMHow to Build Composite Applications with PRISM
How to Build Composite Applications with PRISM
 
Microsoft Kinect & the Microsoft MIX11 Game Preview
Microsoft Kinect & the Microsoft MIX11 Game PreviewMicrosoft Kinect & the Microsoft MIX11 Game Preview
Microsoft Kinect & the Microsoft MIX11 Game Preview
 
Managing High Availability with Low Cost
Managing High Availability with Low CostManaging High Availability with Low Cost
Managing High Availability with Low Cost
 
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
A Microsoft Silverlight User Group Starter Kit Made Available for Everyone to...
 

Último

CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
anilsa9823
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
9953056974 Low Rate Call Girls In Saket, Delhi NCR
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 

Último (20)

Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
Diamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with PrecisionDiamond Application Development Crafting Solutions with Precision
Diamond Application Development Crafting Solutions with Precision
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS LiveVip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
Vip Call Girls Noida ➡️ Delhi ➡️ 9999965857 No Advance 24HRS Live
 
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
Try MyIntelliAccount Cloud Accounting Software As A Service Solution Risk Fre...
 
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICECHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
CHEAP Call Girls in Pushp Vihar (-DELHI )🔝 9953056974🔝(=)/CALL GIRLS SERVICE
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
Reassessing the Bedrock of Clinical Function Models: An Examination of Large ...
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 

Building Applications with the Microsoft Kinect SDK

  • 1. KINECT FOR WINDOWS It’s All NUI to me: Building Apps with the Microsoft Kinect SDK David Silverlight Founder and Chief Software Architect TheSilverlightGroup.com IsYourWebMasterDead.com
  • 2. KINECT FOR WINDOWS Agenda • NUI – What? • Demo’s – See what all the hullabaloo is about • Getting Started/Kinect Explorer/QuickStarts • Building Your Own Kinect apps. • (Video, Depth, Skeleton, Audio) • Resources
  • 3. KINECT FOR WINDOWS Kinect: Setter of World Records!
  • 4. KINECT FOR WINDOWS And Some Disasters
  • 5. KINECT FOR WINDOWS It’s in the headlines
  • 6. KINECT FOR WINDOWS What is NUI? • Natural User Interface • Common term used by designers and developers of computer interfaces to refer to a user interface that is effectively invisible, or becomes invisible with successive learned interactions, to its users
  • 7. KINECT FOR WINDOWS What is NUI? • An Invisible Interface. • The Content is the Interface. • Removing the Proxy • Direct Manipulation • Gestural interfaces
  • 8. KINECT FOR WINDOWS Seeing is believing – Kinect Development Allows you to capture your movements and opens up a whole new world to animators on a tight budget. 12 Best Kinect Hacks Personal Data Mirror Catch up with the latest headlines, weather and health all whilst brushing your teeth Real Time Motion Capture with XNA Sample showing just what people are doing with the Kinect
  • 9. KINECT FOR WINDOWS Fitnect Virtual Vacation Now another reason to never leave the house. Interactive Fitting room showing how Kinect and business can connect. Seeing is believing – Kinect Development
  • 10. KINECT FOR WINDOWS What can you do with Kinect on a PC or Mac ?
  • 11. KINECT FOR WINDOWS RGB CAMERA MULTI-ARRAY MIC MOTORIZED TILT 3D DEPTH SENSORS
  • 12. KINECT FOR WINDOWS Getting Started: Building Your Own Apps • Designed to get you started • Assumes you have some programming experience • Managed API - Concepts work in both VB/C#
  • 14. KINECT FOR WINDOWS System Requirements • You must run applications that are built by using the Kinect for Windows SDK in a native Windows environment. You cannot run applications in a virtual machine, because the Microsoft Kinect drivers and this SDK must be installed on the computer that is running the application. • Supported Operating Systems and Architectures • Windows 7 (x86 or x64) • Hardware Requirements • Computer with a dual-core, 2.66-GHz or faster processor • Windows 7–compatible graphics card that supports Microsoft® DirectX® 9.0c capabilities • 2 GB of RAM • Kinect for Xbox 360® sensor—retail edition, which includes special USB/power cabling
  • 15. KINECT FOR WINDOWS System Requirements • Software Requirements • Microsoft Visual Studio® 2010 Express or other Visual Studio 2010 edition • Microsoft .NET Framework 4.0 (installed with Visual Studio 2010) • For C++ SkeletalViewer samples: • DirectX Software Development Kit, June 2010 or later version • DirectX End-User Runtime Web Installer • For Speech sample (x86 only): • Microsoft Speech Platform - Server Runtime, version 10.2 (x86 edition) • Microsoft Speech Platform - Software Development Kit, version 10.2 (x86 edition) • Kinect for Windows Runtime Language Pack, version 0.9 (acoustic model from Microsoft Speech Platform for the Kinect for Windows SDK Beta)
  • 16. KINECT FOR WINDOWS It all starts here: http://www.microsoft.com/en-us/kinectforwindows/ Developing your own Kinect aps
  • 17. KINECT FOR WINDOWS Kinect for Windows SDK Quickstarts • http://channel9.msdn.com/Series/KinectQuickstart - All are great, IMHO • The Kinect Explorer is new from the Beta • Kinect for Windows SDK Browser. • Installing and Using the Kinect Sensor • Setting up your development environment • Skeletal Tracking fundamentals • Camera Fundamentals • Working with Depth Data • Audio Fundamentals
  • 18. KINECT FOR WINDOWS SETTING UP YOUR DEVELOPMENT ENVIRONMENT
  • 19. KINECT FOR WINDOWS Setting up your Development Environment Add our references to: - The Microsoft.Samples.Kinect.WpfViewers Project - The Coding4Fun.Wpf.dll Reference the assembly: • using Microsoft.Kinect;
  • 20. KINECT FOR WINDOWS KINECT API BASICS • Manage Kinect state • Connected • Enable Color, Depth, Skeleton • Start Kinect • Get Data • Events - AllFramesReady • Polling – OpenNextFrame
  • 21. KINECT FOR WINDOWS RESOURCES • Install Kinect Explorer • KinectWpfViewers • Coding4Fun Toolkit • Skeletal scaling
  • 22. KINECT FOR WINDOWS SETTING UP YOUR DEV ENVIRONMENT DEMO
  • 23. KINECT FOR WINDOWS Setting the Camera Tilt Angle CAMERA FUNDAMENTALS
  • 24. KINECT FOR WINDOWS Setting the Camera Tilt Angle • Warning: The tilt mechanism in the sensor array is not rated for frequent use. Your code should not make calls to tilt the device more than 15 times in any two-minute window. Changing the tilt too often results in an error message from the function. • To adjust the tilt or pitch, set the ElevationAngle property to a value between –27 (Camera.ElevationMinimum) and +27 (Camera.ElevationMaximum). The code below sets the camera to the maximum elevation: • kinectSensorChooser.Kinect.ElevationAngle = Convert.ToInt16(slider1.Value);
  • 26. KINECT FOR WINDOWS RESOLUTIONS • Color • 12 FPS: 1280X960 RGB • 15 FPS: Raw YUV 640x480 • 30 FPS: 640x480 • Depth • 30 FPS: 80x60, 320x240, 640x480
  • 28. KINECT FOR WINDOWS CAMERA DATA • Events return ImageFrame • PixelDataLength • FrameNumber • Timestamp • Dimensions: Height, Width • Use AllFramesReady event to synchronize
  • 29. KINECT FOR WINDOWS CAMERA FUNDAMENTALS DEMO
  • 30. KINECT FOR WINDOWS WORKING WITH DEPTH DATA
  • 31. KINECT FOR WINDOWS DEPTH DATA • Returns the distance and player for every pixel • Ex: 320x240 = 76,800 pixels • Distance • Distance in mm from Kinect ex: 2,000mm (6.56 feet) • Player • 1-6 players
  • 32. KINECT FOR WINDOWS MODE Mode Depth & Player Center Hip Joint Other 19 Joints Default Yes Yes Yes Near Yes Yes No, for v1.0
  • 33. KINECT FOR WINDOWS DISTANCES 1.3’ 2.6’ 9.8’ 13.1’ 26.2’ .4 .8 3 4 8 Default Mode Near Mode Feet Meters
  • 34. KINECT FOR WINDOWS FORMULAS • Distance Formula int depth = depthPoint >> DepthImageFrame.PlayerIndexBitmaskWidth; • Player Formula int player = depthPoint & DepthImageFrame.PlayerIndexBitmask;
  • 35. KINECT FOR WINDOWS WORKING WITH DEPTH DATA DEMO
  • 37. KINECT FOR WINDOWS Joints • Maximum two players tracked at once • Six player proposals • Each player with set of <x, y, z> joints in meters • Each joint has associated state • Tracked, Not tracked, or Inferred • Inferred - Occluded, clipped, or low confidence joints • Not Tracked - Rare, but your code must check for this state
  • 42. KINECT FOR WINDOWS QUICKSTART SERIES • Installing and Using the Kinect Sensor • Setting up your Development Environment • Camera Fundamentals • Working with Depth Data • Skeletal Tracking Fundamentals • Audio Fundamentals
  • 43. KINECT FOR WINDOWS SOUND POSITION • Sound Source Angle – the angle and confidence level of where audio is coming from • Beam Angle – The angle used to record audio that you can set as a “directional microphone” -50 0 +50
  • 44. KINECT FOR WINDOWS RECORDING • KinectAudioSource audio buffer • Use Echo Cancellation to not record PC sound
  • 45. KINECT FOR WINDOWS SPEECH RECOGNITION • Grammar – What we are listening for • Code – GrammarBuilder, Choices • Note: Ensure AutomaticGainControl = false
  • 46. KINECT FOR WINDOWS GRAMMAR <!-- Confirmation_Yes._value: string ["Yes"] --> <rule id="Confirmation_Yes" scope="public"> <example> yes </example> <example> yes please </example> <one-of> <item> yes </item> <item> yeah </item> <item> yep </item> <item> ok </item> </one-of> <item repeat="0-1"> please </item> <tag> out._value = "Yes";</tag> var grammar = new Choices(); grammar.Add(“yes please"); grammar.Add(“yes"); grammar.Add(“yeah"); grammar.Add(“ok");
  • 47. KINECT FOR WINDOWS MULTI-MODAL FEEDBACK • Engagement model – Mic indicator for speech-enabled menus – Keyword to engage • Feedback and confirmation
  • 50. KINECT FOR WINDOWS The Future of Kinect • Better close up
  • 53. KINECT FOR WINDOWS Kinect version of Siri (other CodePlex)
  • 55. KINECT FOR WINDOWS Resources • Coding 4 Fun - Coding4Fun Kinect Toolkit • OpenSource Projects • SilverlightKinect
  • 56. KINECT FOR WINDOWS What we have learned • Examples of the amazing things that can be done with the Kinect • How amazing the Kinect Device is, equivalent to $200,000 in capabilities • How to create our own Kinect applications, Video, Skeletal and Audio tracking. • The future of Kinect
  • 57. KINECT FOR WINDOWS Thank You • David Silverlight • David@TheSilverlightGroup.com