Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Programming with Kinect for Windows: From Hello...
Search
latish
March 16, 2013
Programming
1
2.2k
Programming with Kinect for Windows: From Hello World to Lightsabers in 60 minutes
Slides for Introduction to Kinect Programming using C# and WPF
latish
March 16, 2013
Tweet
Share
More Decks by latish
See All by latish
Improving Continuously as a Developer
latish
10
1.3k
Other Decks in Programming
See All in Programming
BEエンジニアがFEの業務をできるようになるまでにやったこと
yoshida_ryushin
0
200
非ブラウザランタイムとWeb標準 / Non-Browser Runtimes and Web Standards
petamoriken
0
430
知られざるDMMデータエンジニアの生態 〜かつてツチノコと呼ばれし者〜
takaha4k
1
450
Оптимизируем производительность блока Казначейство
lamodatech
0
950
情報漏洩させないための設計
kubotak
5
1.3k
カンファレンス動画鑑賞会のススメ / Osaka.swift #1
hironytic
0
170
歴史と現在から考えるスケーラブルなソフトウェア開発のプラクティス
i10416
0
300
EC2からECSへ 念願のコンテナ移行と巨大レガシーPHPアプリケーションの再構築
sumiyae
3
590
PHPで学ぶプログラミングの教訓 / Lessons in Programming Learned through PHP
nrslib
4
1.1k
functionalなアプローチで動的要素を排除する
ryopeko
1
210
最近のVS Codeで気になるニュース 2025/01
74th
1
100
快速入門可觀測性
blueswen
0
500
Featured
See All Featured
jQuery: Nuts, Bolts and Bling
dougneiner
62
7.6k
Side Projects
sachag
452
42k
Building a Scalable Design System with Sketch
lauravandoore
460
33k
Building an army of robots
kneath
302
45k
Large-scale JavaScript Application Architecture
addyosmani
510
110k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
120k
What's in a price? How to price your products and services
michaelherold
244
12k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2k
For a Future-Friendly Web
brad_frost
176
9.5k
Six Lessons from altMBA
skipperchong
27
3.6k
Rails Girls Zürich Keynote
gr2m
94
13k
Making Projects Easy
brettharned
116
6k
Transcript
Programming with Kinect for Windows @latish
Latish Sehgal @latish latish.sehgal@ improvingenterprises.com www.dotnetsurfers.com www.dallas-csharp-sig.com
~ 10 years ago
None
June 2009 Project Natal announced
June 2009 Project Natal announced Nov 2010 Kinect Launched
None
Feb 2012 Windows Hardware, SDK 1.0 Color, Depth & Audio
streams Skeletal Tracking Speech Recognition June 2009 Project Natal announced Nov 2010 Kinect Launched
Feb 2012 Windows Hardware, SDK 1.0 May 2012 SDK 1.5
Kinect Studio Face Tracking Seated Skeletal Tracking June 2009 Project Natal announced Nov 2010 Kinect Launched
Feb 2012 Windows Hardware, SDK 1.0 May 2012 SDK 1.5
Infrared Stream Accelerometer Data Win8, VS2012 support Oct 2012 SDK 1.6 June 2009 Project Natal announced Nov 2010 Kinect Launched
Kinect for Windows
Kinect Sensors
Viewing Angles
Installation •Kinect For Windows SDK •Kinect For Windows Developer Toolkit
Optional •Coding4Fun Toolkit •Kinect Toolbox http://kinectforwindows.org
Demo
Video Stream
Resolutions 640 x 480 @ 30fps (RGB) 1280 x 960
@ 12fps (RGB) 640 x 480 @ 15fps (YUV)
Demo
Depth Stream
640 x 480 320 x 240 80 x 60 @
30 fps Resolutions
None
depth depthPoint >> DepthImageFrame.PlayerIndexBitmaskWidth player depthPoint & DepthImageFrame.PlayerIndexBitmask 0001100100000 010
depth =800mm player 2
Demo
Skeletal Tracking
20 Tracked Points
2 Actively Tracked, 6 Total
Standing vs Seated Tracking
None
•Each joint has associated tracking state
•Each joint has associated tracking state •Tracked, Not tracked or
Inferred
•Each joint has associated tracking state •Tracked, Not tracked or
Inferred •Use TransformSmoothParameters to smooth joint data to reduce jitter
Demo
Audio Stream
Sound Source Angle vs Beam Angle
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");
Demo
Face Tracking
100 tracked points
Head Pose Angles
None
•Real-time tracking of multiple faces
•Real-time tracking of multiple faces •2D/3D Mesh and Points
•Real-time tracking of multiple faces •2D/3D Mesh and Points •Animation
Units
Demo
Gestures & Poses Install-Package KinectToolbox
Algorithmic vs Templated
Demo
Kinect as a Service kinectservice.codeplex.com
None
•Available via Nuget
•Available via Nuget •Support for Windows 8, WPF and Windows
Phone
Demo
Kinect Studio
Demo
Usability
None
•Review Microsoft’s Human Interface Guidelines
•Review Microsoft’s Human Interface Guidelines •Don’t torture your users
•Review Microsoft’s Human Interface Guidelines •Don’t torture your users •Best
user experiences are context aware
•Review Microsoft’s Human Interface Guidelines •Don’t torture your users •Best
user experiences are context aware •Complement gestures with speech actions
•Review Microsoft’s Human Interface Guidelines •Don’t torture your users •Best
user experiences are context aware •Complement gestures with speech actions •Keep a logical relationship between gestures and corresponding actions
Watch another Demo, you will
Real world Uses
Barbie Dream Closet mattel.com
Home Automation http://castleos.com/
Alex’s Place (Children’s clinic)
and many more..
Personal Experience
Pros
•Your non-geek family/friends will think that your work is really
cool! Pros
•Your non-geek family/friends will think that your work is really
cool! •Testing will make you move Pros
•Your non-geek family/friends will think that your work is really
cool! •Testing will make you move •This changes everything This changes a few things, but in big ways Pros
Cons
Cons •Upfront hardware investment
Cons •Upfront hardware investment •Testing can make you look awkward
Cons •Upfront hardware investment •Testing can make you look awkward
•Testing will make you move
Resources
Resources •http://channel9.msdn.com/Series/KinectQuickstart
Resources •http://channel9.msdn.com/Series/KinectQuickstart •SDK Samples
Resources •http://channel9.msdn.com/Series/KinectQuickstart •SDK Samples •Book “Programming with the Kinect for
Windows Software Development Kit” by David Catuhe
@latish
[email protected]
www.dotnetsurfers.com github.com/latish