SlideShare a Scribd company logo
1 of 37
Download to read offline
ARDIC 2010ARDIC 2010
KURUMSAL SUNUMKURUMSAL SUNUM
KINECT ON ANDROIDKINECT ON ANDROID
PANDABOARDPANDABOARD
ÜMİT UZUNÜMİT UZUN
Senior Software Engineer
1ARDIC A.S CONFIDENTIAL
Agenda
2© ARDIC, Inc. 2013
• Introduce most known Kinect sensor device
• Introduce PrimeSense technology behind
Kinect
• Introduce OpenNI library and architecture
leaded by PrimeSense
• Introduce NITE middleware library developed
by PrimeSense
• Show Demo
Kinect Sensor
3© ARDIC, Inc. 2013
Kinect Sensor
4© ARDIC, Inc. 2013
The Kinect Sensor
was originally
intended to be a
motion sensing input
device for the
Xbox 360,
allowing the user to
control games via
gestures and spoken
commands.
Kinect Teardown
5© ARDIC, Inc. 2013
Kinect IR Depth Sensor
6© ARDIC, Inc. 2013
• The IR light source is a laser that projects
an irregular pattern of dots.
• The monochrome CMOS IR sensor
measures the dots' “time of flight” after
they reflect off objects in the scene.
• In the same way as sonar, knowing how
long the light takes to return, the Kinect can
calculate how far away an object is located.
• IR is used to reduce the problem of ambient
light affecting the calculations.
IR Projected Dots
7© ARDIC, Inc. 2013
Kinect Development Software
8© ARDIC, Inc. 2013
There are four main Kinect development libraries:
• OpenKinect's libfreenect (
http://openkinect.org/wiki/Main_Page)
• CLNUI (http://codelaboratories.com/nui/)
• OpenNI (http://www.openni.org/)
• Microsoft's Kinect for Windows SDK (
http://www.microsoft.com/en-us/kinectforwindow
)
Kinect Development Software
9© ARDIC, Inc. 2013
• OpenKinect's libfreenect is derived from a reverse-
engineered/hacked Kinect driver, which works across
Windows, Linux and MacOS X.
• CLNUI (http://codelaboratories.com/nui/) is aimed at
Windows only, but allows multiple Kinects to work
together.
• It's really not fair to compare libfreenect or CLNUI with
OpenNI, which is intended to act as an interface
between a variety of sensor drivers (including a Kinect
driver) and middleware for manipulating the sensor
data in a higher-level manner (e.g. for recognizing
user gestures as commands).
PrimeSense - Technology
10© ARDIC, Inc. 2013
• PrimeSense 3D sensing technology
gives digital devices the ability to
observe a scene in three
dimensions.
• It translates these observations
into a synchronized image stream
(depth and color) – just like
humans do.
• It then takes those synchronized
images and translates them into
information.
• We call this depth sensing, which is
made possible through the cutting-
edge technology embedded in
primesense sensors and
middleware.
PrimeSense Reference Design
11© ARDIC, Inc. 2013
PrimeSense - Sensors
12© ARDIC, Inc. 2013
• PrimeSense 3D Sensors give
digital devices the gift of sight,
enabling Natural Interaction
between people and devices
and between devices and their
surroundings.
• Using cutting-edge technology,
sensors are robust, accurate
and affordable.
• They are used in mass-market
commercial devices. With more
options than ever – mid-range,
close range, a peripheral and an
embedded sensor.
PrimeSense - NITE
13© ARDIC, Inc. 2013
• PrimeSense 3D sensing technology is a
layered solution, combining both
hardware and software.
• The PrimeSense NiTE™ perception
algorithms layer is the most robust
and advanced 3D middleware
available in the market.
• It provides the application with a clear
user-control API, whether it is hand-
based control or a full-body control.
• The algorithms utilize the depth, color,
IR and audio information received from
the hardware device, which enable
them to perform functions such as
hand locating and tracking; user
segmentation; user skeleton joint
tracking; and more.
PrimeSense – Ecosystem
14© ARDIC, Inc. 2013
PrimeSense - Capri
15© ARDIC, Inc. 2013
PrimeSense – Capri
16© ARDIC, Inc. 2013
• Take the 3D sensor inside the Microsoft
Kinect, shrink it down to a tenth of its original
size and add a bunch of mobile capabilities,
and you have yourself PrimeSense’s latest
conquest, better known as Capri.
• The company, which is the brains behind the
Kinect, has been openly working on bringing
a tiny-yet-advanced 3D experience to tablets,
televisions and smartphones for quite some
time now.
OpenNI Layers
17© ARDIC, Inc. 2013
OpenNI Kinect Driver
18© ARDIC, Inc. 2013
• OpenNI's Kinect driver is called
SensorKinect, and is derived from open
sourced (LGPL) code from PrimeSense,
the company behind Kinect's depth
sensor technology.
• One advantage of libfreenect is API
support for controlling the Kinect's tilt
motor, status light, and accelerometer,
which is missing from the SensorKinect
driver.
KinectSDK vs OpenNI
19© ARDIC, Inc. 2013
• The main area where the SDK wins over
OpenNI is audio. Although OpenNI contains
audio-related APIs, not fully implemented.
• Other pluses for Microsoft's SDK are its
extensive documentation and examples,
and its ease of installation on Windows 7.
• The main drawback of the SDK is that it
only works on Windows 7, not XP or any
non-windows platform.
• The KinectSDK is free, but limited to non-
commercial purposes.
NITE – Natural Interaction
Middleware
20© ARDIC, Inc. 2013
• An important reason for using OpenNI is
its support for middleware.
• The NITE library understands different
hand movements as gesture types
based on how 'hand points' change over
time.
• NITE gestures include pushing, swiping,
holding steady (i.e. no hand movement),
waving, and hand circling.
NITE – SkeletonTracker
21© ARDIC, Inc. 2013
OpenNI SDK – Production Nodes
22© ARDIC, Inc. 2013
OpenNI SDK – Production Nodes
23© ARDIC, Inc. 2013
• The main functional element in OpenNI is
the production node.
• A node may represent a sensor's
functionality (e.g. depth detection,
infrared, audio) or a higher-level
abstraction (e.g. user positioning, hand
tracking).
• An OpenNI application always starts by
initializing the nodes it needs for its
particular task.
OpenNI SDK – Generators
24© ARDIC, Inc. 2013
OpenNI SDK – Generators
25© ARDIC, Inc. 2013
The MapGenerator subclasses typically output
streams of images which are called maps in OpenNI.
The sensor-related Generator subclasses are:
• AudioGenerator: for producing an audio stream.
• DepthGenerator: for creating a stream of depth
maps.
• ImageGenerator: for creating colored image maps.
• IRGenerator: for creating infrared image maps.
OpenNI SDK – Generators
26© ARDIC, Inc. 2013
The middleware-related classes are:
• GesturesGenerator: for recognizing hand gestures,
such as waving and swiping.
• HandsGenerator: for hand detection and tracking;
• SceneAnalyzer: for separating the foreground from
the background in a scene, labeling the figures,
and detecting the floor. The main output is a
stream of labeled depth maps.
• UserGenerator: generates a representation of a
(full or partial) body in the scene.
OpenNI SDK - Data and Metadata
27© ARDIC, Inc. 2013
OpenNI SDK - Data and Metadata
28© ARDIC, Inc. 2013
• The map generators (the depth,
image, IR and scene generators) make
their data available as subclasses of
Map and MapMetaData.
• Metadata are data properties (as
opposed to the data itself), such as
map resolution.
OpenNI SDK - Listeners
29© ARDIC, Inc. 2013
OpenNI SDK - Listeners
30© ARDIC, Inc. 2013
• Generators can also interact with user
programs via listeners (called
callbacks in OpenNI).
• The MapGenerators tend to use
StateChangedObservable listeners,
while other generators (e.g. for hands
and gesture recognition) use
Observable<EventArgs> listeners,
with different EventArgs subclasses.
OpenNI SDK - Capabilities
31© ARDIC, Inc. 2013
OpenNI SDK - Capabilities
32© ARDIC, Inc. 2013
• OpenNI is intended to work with
different sensors, so the capabilities
of an instantiated production node
may vary. For instance, some
webcams may allow an image map to
be cropped.
• Each capability is represented by a
subclass of CapabilityBase.
NiSimpleViewer
33© ARDIC, Inc. 2013
NiUserTracker
34© ARDIC, Inc. 2013
35© ARDIC, Inc. 2013
36© ARDIC, Inc. 2013
TEŞEKKÜRLER
THANK YOU
www.ardictech.com
© ARDIC, Inc. 2013

More Related Content

What's hot

Kinect presentation
Kinect presentationKinect presentation
Kinect presentationAnkur Sharma
 
Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2Jeff Sipko
 
Xbox 360 Kinect
Xbox 360 Kinect  Xbox 360 Kinect
Xbox 360 Kinect Saif Pathan
 
Microsoft Kinect in Healthcare
Microsoft Kinect in HealthcareMicrosoft Kinect in Healthcare
Microsoft Kinect in HealthcareGSW
 
Intel RealSense Hands-on Lab - Rome
Intel RealSense Hands-on Lab - RomeIntel RealSense Hands-on Lab - Rome
Intel RealSense Hands-on Lab - RomeMatteo Valoriani
 
Dev09 – la battaglia del touchless
Dev09 – la battaglia del touchlessDev09 – la battaglia del touchless
Dev09 – la battaglia del touchlessClemente Giorio
 
Using intel's real sense to create games with natural user interfaces justi...
Using intel's real sense to create games with natural user interfaces   justi...Using intel's real sense to create games with natural user interfaces   justi...
Using intel's real sense to create games with natural user interfaces justi...BeMyApp
 
Introduction to Kinect v2
Introduction to Kinect v2Introduction to Kinect v2
Introduction to Kinect v2Tsukasa Sugiura
 
Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...
Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...
Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...Kevin Arthur
 
Intel RealSense technology : Overview and demos
Intel RealSense technology : Overview and demosIntel RealSense technology : Overview and demos
Intel RealSense technology : Overview and demosZayen Chagra
 
Augmented Reality with the Intel® RealSense™ SDK and R200 Camera
Augmented Reality with the Intel® RealSense™ SDK and R200 CameraAugmented Reality with the Intel® RealSense™ SDK and R200 Camera
Augmented Reality with the Intel® RealSense™ SDK and R200 CameraIntel® Software
 
Programming with RealSense using .NET
Programming with RealSense using .NETProgramming with RealSense using .NET
Programming with RealSense using .NETMatteo Valoriani
 

What's hot (20)

Kinect
KinectKinect
Kinect
 
Kinect presentation
Kinect presentationKinect presentation
Kinect presentation
 
Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2Becoming a kinect hacker innovator v2
Becoming a kinect hacker innovator v2
 
Kinect
KinectKinect
Kinect
 
Kinect sensor
Kinect sensorKinect sensor
Kinect sensor
 
Kinect
KinectKinect
Kinect
 
Xbox 360 Kinect
Xbox 360 Kinect  Xbox 360 Kinect
Xbox 360 Kinect
 
Microsoft Kinect in Healthcare
Microsoft Kinect in HealthcareMicrosoft Kinect in Healthcare
Microsoft Kinect in Healthcare
 
Intel RealSense Hands-on Lab - Rome
Intel RealSense Hands-on Lab - RomeIntel RealSense Hands-on Lab - Rome
Intel RealSense Hands-on Lab - Rome
 
Dev09 – la battaglia del touchless
Dev09 – la battaglia del touchlessDev09 – la battaglia del touchless
Dev09 – la battaglia del touchless
 
Using intel's real sense to create games with natural user interfaces justi...
Using intel's real sense to create games with natural user interfaces   justi...Using intel's real sense to create games with natural user interfaces   justi...
Using intel's real sense to create games with natural user interfaces justi...
 
Introduction to Kinect v2
Introduction to Kinect v2Introduction to Kinect v2
Introduction to Kinect v2
 
Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...
Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...
Augmented Reality with the Intel® RealSenseTM SDK and R200 Camera: User Exper...
 
Intel RealSense technology : Overview and demos
Intel RealSense technology : Overview and demosIntel RealSense technology : Overview and demos
Intel RealSense technology : Overview and demos
 
Oculus rift
Oculus riftOculus rift
Oculus rift
 
Augmented Reality with the Intel® RealSense™ SDK and R200 Camera
Augmented Reality with the Intel® RealSense™ SDK and R200 CameraAugmented Reality with the Intel® RealSense™ SDK and R200 Camera
Augmented Reality with the Intel® RealSense™ SDK and R200 Camera
 
Programming with RealSense using .NET
Programming with RealSense using .NETProgramming with RealSense using .NET
Programming with RealSense using .NET
 
Oculus rift
Oculus riftOculus rift
Oculus rift
 
Oculus rift
Oculus riftOculus rift
Oculus rift
 
Kinect
Kinect Kinect
Kinect
 

Similar to Kinect on Android Pandaboard

Natural User Interface Microsoft Kinect and Surface Computing
Natural User Interface Microsoft Kinect and Surface ComputingNatural User Interface Microsoft Kinect and Surface Computing
Natural User Interface Microsoft Kinect and Surface ComputingYuvaraj Ilangovan
 
Marker less augmentedd reality using computer vision
Marker less augmentedd reality using computer visionMarker less augmentedd reality using computer vision
Marker less augmentedd reality using computer visiongametester6
 
Touchless touchscreen
Touchless touchscreenTouchless touchscreen
Touchless touchscreenNaga Dinesh
 
Touchless Touchscreen Technology
Touchless Touchscreen TechnologyTouchless Touchscreen Technology
Touchless Touchscreen TechnologyAkshay Vasava
 
Xbox one development kit 2 copy - copy
Xbox one development kit 2   copy - copyXbox one development kit 2   copy - copy
Xbox one development kit 2 copy - copyrojizo frio
 
Per c for unity devs
Per c for unity devsPer c for unity devs
Per c for unity devsBeMyApp
 
Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...
Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...
Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...AugmentedWorldExpo
 
Human interface guidelines_v1.8.0
Human interface guidelines_v1.8.0Human interface guidelines_v1.8.0
Human interface guidelines_v1.8.0Lisandro Mierez
 
NUX Presentation from TechMixer Birmingham 2011
NUX Presentation from TechMixer Birmingham 2011NUX Presentation from TechMixer Birmingham 2011
NUX Presentation from TechMixer Birmingham 2011Michael Heydt
 
Sixth sense technology
Sixth sense technologySixth sense technology
Sixth sense technologyAkhil Ak
 
Kinect for Windows SDK - Programming Guide
Kinect for Windows SDK - Programming GuideKinect for Windows SDK - Programming Guide
Kinect for Windows SDK - Programming GuideKatsuhito Okada
 
Augmented Reality Application - Final Year Project
Augmented Reality Application - Final Year ProjectAugmented Reality Application - Final Year Project
Augmented Reality Application - Final Year ProjectYash Kaushik
 
AXONIM 2018 consumer devices development
AXONIM 2018 consumer devices developmentAXONIM 2018 consumer devices development
AXONIM 2018 consumer devices developmentVitaliy Bozhkov ✔
 
Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...
Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...
Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...AugmentedWorldExpo
 
Developing For Kinect For Windows
Developing For Kinect For WindowsDeveloping For Kinect For Windows
Developing For Kinect For WindowsPrashant Tiwari
 
Intel Real Sense, Diversity Meetup by Jamie Tanna
Intel Real Sense, Diversity Meetup by Jamie TannaIntel Real Sense, Diversity Meetup by Jamie Tanna
Intel Real Sense, Diversity Meetup by Jamie TannaBeMyApp
 
Making Augmented Reality Applications with Android NDK
Making Augmented Reality Applications with Android NDKMaking Augmented Reality Applications with Android NDK
Making Augmented Reality Applications with Android NDKEvren Coşkun
 
Sensor based interaction
Sensor based interaction Sensor based interaction
Sensor based interaction Mirza Israr
 
Touchless-Touchscreen-Technology-PPT.pptx
Touchless-Touchscreen-Technology-PPT.pptxTouchless-Touchscreen-Technology-PPT.pptx
Touchless-Touchscreen-Technology-PPT.pptxArebuMaruf
 

Similar to Kinect on Android Pandaboard (20)

Natural User Interface Microsoft Kinect and Surface Computing
Natural User Interface Microsoft Kinect and Surface ComputingNatural User Interface Microsoft Kinect and Surface Computing
Natural User Interface Microsoft Kinect and Surface Computing
 
Marker less augmentedd reality using computer vision
Marker less augmentedd reality using computer visionMarker less augmentedd reality using computer vision
Marker less augmentedd reality using computer vision
 
Xbox One Kinect
Xbox One KinectXbox One Kinect
Xbox One Kinect
 
Touchless touchscreen
Touchless touchscreenTouchless touchscreen
Touchless touchscreen
 
Touchless Touchscreen Technology
Touchless Touchscreen TechnologyTouchless Touchscreen Technology
Touchless Touchscreen Technology
 
Xbox one development kit 2 copy - copy
Xbox one development kit 2   copy - copyXbox one development kit 2   copy - copy
Xbox one development kit 2 copy - copy
 
Per c for unity devs
Per c for unity devsPer c for unity devs
Per c for unity devs
 
Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...
Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...
Raheel Khalid (Envrmnt by Verizon): Cloud XR Experience on 5G with Mobile Edg...
 
Human interface guidelines_v1.8.0
Human interface guidelines_v1.8.0Human interface guidelines_v1.8.0
Human interface guidelines_v1.8.0
 
NUX Presentation from TechMixer Birmingham 2011
NUX Presentation from TechMixer Birmingham 2011NUX Presentation from TechMixer Birmingham 2011
NUX Presentation from TechMixer Birmingham 2011
 
Sixth sense technology
Sixth sense technologySixth sense technology
Sixth sense technology
 
Kinect for Windows SDK - Programming Guide
Kinect for Windows SDK - Programming GuideKinect for Windows SDK - Programming Guide
Kinect for Windows SDK - Programming Guide
 
Augmented Reality Application - Final Year Project
Augmented Reality Application - Final Year ProjectAugmented Reality Application - Final Year Project
Augmented Reality Application - Final Year Project
 
AXONIM 2018 consumer devices development
AXONIM 2018 consumer devices developmentAXONIM 2018 consumer devices development
AXONIM 2018 consumer devices development
 
Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...
Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...
Mitchell Reifel (pmdtechnologies ag): pmd Time-of-Flight – the Swiss Army Kni...
 
Developing For Kinect For Windows
Developing For Kinect For WindowsDeveloping For Kinect For Windows
Developing For Kinect For Windows
 
Intel Real Sense, Diversity Meetup by Jamie Tanna
Intel Real Sense, Diversity Meetup by Jamie TannaIntel Real Sense, Diversity Meetup by Jamie Tanna
Intel Real Sense, Diversity Meetup by Jamie Tanna
 
Making Augmented Reality Applications with Android NDK
Making Augmented Reality Applications with Android NDKMaking Augmented Reality Applications with Android NDK
Making Augmented Reality Applications with Android NDK
 
Sensor based interaction
Sensor based interaction Sensor based interaction
Sensor based interaction
 
Touchless-Touchscreen-Technology-PPT.pptx
Touchless-Touchscreen-Technology-PPT.pptxTouchless-Touchscreen-Technology-PPT.pptx
Touchless-Touchscreen-Technology-PPT.pptx
 

Recently uploaded

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetEnjoy Anytime
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraDeakin University
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 

Recently uploaded (20)

Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your BudgetHyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
Hyderabad Call Girls Khairatabad ✨ 7001305949 ✨ Cheap Price Your Budget
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Artificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning eraArtificial intelligence in the post-deep learning era
Artificial intelligence in the post-deep learning era
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 

Kinect on Android Pandaboard

  • 1. ARDIC 2010ARDIC 2010 KURUMSAL SUNUMKURUMSAL SUNUM KINECT ON ANDROIDKINECT ON ANDROID PANDABOARDPANDABOARD ÜMİT UZUNÜMİT UZUN Senior Software Engineer 1ARDIC A.S CONFIDENTIAL
  • 2. Agenda 2© ARDIC, Inc. 2013 • Introduce most known Kinect sensor device • Introduce PrimeSense technology behind Kinect • Introduce OpenNI library and architecture leaded by PrimeSense • Introduce NITE middleware library developed by PrimeSense • Show Demo
  • 4. Kinect Sensor 4© ARDIC, Inc. 2013 The Kinect Sensor was originally intended to be a motion sensing input device for the Xbox 360, allowing the user to control games via gestures and spoken commands.
  • 6. Kinect IR Depth Sensor 6© ARDIC, Inc. 2013 • The IR light source is a laser that projects an irregular pattern of dots. • The monochrome CMOS IR sensor measures the dots' “time of flight” after they reflect off objects in the scene. • In the same way as sonar, knowing how long the light takes to return, the Kinect can calculate how far away an object is located. • IR is used to reduce the problem of ambient light affecting the calculations.
  • 7. IR Projected Dots 7© ARDIC, Inc. 2013
  • 8. Kinect Development Software 8© ARDIC, Inc. 2013 There are four main Kinect development libraries: • OpenKinect's libfreenect ( http://openkinect.org/wiki/Main_Page) • CLNUI (http://codelaboratories.com/nui/) • OpenNI (http://www.openni.org/) • Microsoft's Kinect for Windows SDK ( http://www.microsoft.com/en-us/kinectforwindow )
  • 9. Kinect Development Software 9© ARDIC, Inc. 2013 • OpenKinect's libfreenect is derived from a reverse- engineered/hacked Kinect driver, which works across Windows, Linux and MacOS X. • CLNUI (http://codelaboratories.com/nui/) is aimed at Windows only, but allows multiple Kinects to work together. • It's really not fair to compare libfreenect or CLNUI with OpenNI, which is intended to act as an interface between a variety of sensor drivers (including a Kinect driver) and middleware for manipulating the sensor data in a higher-level manner (e.g. for recognizing user gestures as commands).
  • 10. PrimeSense - Technology 10© ARDIC, Inc. 2013 • PrimeSense 3D sensing technology gives digital devices the ability to observe a scene in three dimensions. • It translates these observations into a synchronized image stream (depth and color) – just like humans do. • It then takes those synchronized images and translates them into information. • We call this depth sensing, which is made possible through the cutting- edge technology embedded in primesense sensors and middleware.
  • 12. PrimeSense - Sensors 12© ARDIC, Inc. 2013 • PrimeSense 3D Sensors give digital devices the gift of sight, enabling Natural Interaction between people and devices and between devices and their surroundings. • Using cutting-edge technology, sensors are robust, accurate and affordable. • They are used in mass-market commercial devices. With more options than ever – mid-range, close range, a peripheral and an embedded sensor.
  • 13. PrimeSense - NITE 13© ARDIC, Inc. 2013 • PrimeSense 3D sensing technology is a layered solution, combining both hardware and software. • The PrimeSense NiTE™ perception algorithms layer is the most robust and advanced 3D middleware available in the market. • It provides the application with a clear user-control API, whether it is hand- based control or a full-body control. • The algorithms utilize the depth, color, IR and audio information received from the hardware device, which enable them to perform functions such as hand locating and tracking; user segmentation; user skeleton joint tracking; and more.
  • 14. PrimeSense – Ecosystem 14© ARDIC, Inc. 2013
  • 15. PrimeSense - Capri 15© ARDIC, Inc. 2013
  • 16. PrimeSense – Capri 16© ARDIC, Inc. 2013 • Take the 3D sensor inside the Microsoft Kinect, shrink it down to a tenth of its original size and add a bunch of mobile capabilities, and you have yourself PrimeSense’s latest conquest, better known as Capri. • The company, which is the brains behind the Kinect, has been openly working on bringing a tiny-yet-advanced 3D experience to tablets, televisions and smartphones for quite some time now.
  • 18. OpenNI Kinect Driver 18© ARDIC, Inc. 2013 • OpenNI's Kinect driver is called SensorKinect, and is derived from open sourced (LGPL) code from PrimeSense, the company behind Kinect's depth sensor technology. • One advantage of libfreenect is API support for controlling the Kinect's tilt motor, status light, and accelerometer, which is missing from the SensorKinect driver.
  • 19. KinectSDK vs OpenNI 19© ARDIC, Inc. 2013 • The main area where the SDK wins over OpenNI is audio. Although OpenNI contains audio-related APIs, not fully implemented. • Other pluses for Microsoft's SDK are its extensive documentation and examples, and its ease of installation on Windows 7. • The main drawback of the SDK is that it only works on Windows 7, not XP or any non-windows platform. • The KinectSDK is free, but limited to non- commercial purposes.
  • 20. NITE – Natural Interaction Middleware 20© ARDIC, Inc. 2013 • An important reason for using OpenNI is its support for middleware. • The NITE library understands different hand movements as gesture types based on how 'hand points' change over time. • NITE gestures include pushing, swiping, holding steady (i.e. no hand movement), waving, and hand circling.
  • 21. NITE – SkeletonTracker 21© ARDIC, Inc. 2013
  • 22. OpenNI SDK – Production Nodes 22© ARDIC, Inc. 2013
  • 23. OpenNI SDK – Production Nodes 23© ARDIC, Inc. 2013 • The main functional element in OpenNI is the production node. • A node may represent a sensor's functionality (e.g. depth detection, infrared, audio) or a higher-level abstraction (e.g. user positioning, hand tracking). • An OpenNI application always starts by initializing the nodes it needs for its particular task.
  • 24. OpenNI SDK – Generators 24© ARDIC, Inc. 2013
  • 25. OpenNI SDK – Generators 25© ARDIC, Inc. 2013 The MapGenerator subclasses typically output streams of images which are called maps in OpenNI. The sensor-related Generator subclasses are: • AudioGenerator: for producing an audio stream. • DepthGenerator: for creating a stream of depth maps. • ImageGenerator: for creating colored image maps. • IRGenerator: for creating infrared image maps.
  • 26. OpenNI SDK – Generators 26© ARDIC, Inc. 2013 The middleware-related classes are: • GesturesGenerator: for recognizing hand gestures, such as waving and swiping. • HandsGenerator: for hand detection and tracking; • SceneAnalyzer: for separating the foreground from the background in a scene, labeling the figures, and detecting the floor. The main output is a stream of labeled depth maps. • UserGenerator: generates a representation of a (full or partial) body in the scene.
  • 27. OpenNI SDK - Data and Metadata 27© ARDIC, Inc. 2013
  • 28. OpenNI SDK - Data and Metadata 28© ARDIC, Inc. 2013 • The map generators (the depth, image, IR and scene generators) make their data available as subclasses of Map and MapMetaData. • Metadata are data properties (as opposed to the data itself), such as map resolution.
  • 29. OpenNI SDK - Listeners 29© ARDIC, Inc. 2013
  • 30. OpenNI SDK - Listeners 30© ARDIC, Inc. 2013 • Generators can also interact with user programs via listeners (called callbacks in OpenNI). • The MapGenerators tend to use StateChangedObservable listeners, while other generators (e.g. for hands and gesture recognition) use Observable<EventArgs> listeners, with different EventArgs subclasses.
  • 31. OpenNI SDK - Capabilities 31© ARDIC, Inc. 2013
  • 32. OpenNI SDK - Capabilities 32© ARDIC, Inc. 2013 • OpenNI is intended to work with different sensors, so the capabilities of an instantiated production node may vary. For instance, some webcams may allow an image map to be cropped. • Each capability is represented by a subclass of CapabilityBase.