130
KINECTIC VISION 1 Partha Pratim Das, [email protected] & partha.p.da ment of Computer Science & Engineering Institute of Technology Kharagpur Looking Deep into Depth Tutorial: NCVPRIPG 2013 18th December 2013

Kinectic vision looking deep into depth

  • Upload
    ppd1961

  • View
    4.795

  • Download
    0

Embed Size (px)

DESCRIPTION

This presentation as made as a tutorial at NCVPRIPG (http://www.iitj.ac.in/ncvpripg/) at IIT Jodhpur on 18-Dec-2013. Kinect is a multimedia sensor from Microsoft. It is shipped as the touch-free console for Xbox 360 video gaming platform. Kinect comprises an RGB Camera, a Depth Sensor (IR Emitter and Camera) and a Microphone Array. It produces a multi-stream video containing RGB, depth, skeleton, and audio streams. Compared to common depth cameras (laser or Time-of-Flight), the cost of a Kinect is quite low as it uses a novel structured light diffraction and triangulation technology to estimate the depth. In addition, Kinect is equipped with special software to detect human figures and to produce its 20-joints skeletons. Though Kinect was built for touch-free gaming, its cost effectiveness and human tracking features have proved useful in many indoor applications beyond gaming like robot navigation, surveillance, medical assistance and animation.

Citation preview

Page 1: Kinectic vision   looking deep into depth

1

KINECTIC VISION

Prof Partha Pratim Das ppdcseiitkgpernetin amp parthapdasgmailcom Department of Computer Science amp EngineeringIndian Institute of Technology Kharagpur

Looking Deep into Depth

Tutorial NCVPRIPG 201318th December 2013

Natural InteractionUnderstanding human nature How we interact with other people How we interact with environment How we learn

Interaction methods the user is familiar and comfortable with Touch Gesture Voice Eye Gaze

Gesture

Voice

Eye Gaze Touch

Natural User InterfaceRevolutionary change in Human-Computer

interaction

Interpret natural human communication

Computers communicate more like people

The user interface becomes invisibleor looks and feels so real that it is no longer

iconic

Three Layer NUI Model

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 1 HCI ndash Devices and Software Detect and process human behavior

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 2 NUI ndash Middleware and Application Framework Translate human behavior into action

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 2: Kinectic vision   looking deep into depth

Natural InteractionUnderstanding human nature How we interact with other people How we interact with environment How we learn

Interaction methods the user is familiar and comfortable with Touch Gesture Voice Eye Gaze

Gesture

Voice

Eye Gaze Touch

Natural User InterfaceRevolutionary change in Human-Computer

interaction

Interpret natural human communication

Computers communicate more like people

The user interface becomes invisibleor looks and feels so real that it is no longer

iconic

Three Layer NUI Model

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 1 HCI ndash Devices and Software Detect and process human behavior

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 2 NUI ndash Middleware and Application Framework Translate human behavior into action

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 3: Kinectic vision   looking deep into depth

Gesture

Voice

Eye Gaze Touch

Natural User InterfaceRevolutionary change in Human-Computer

interaction

Interpret natural human communication

Computers communicate more like people

The user interface becomes invisibleor looks and feels so real that it is no longer

iconic

Three Layer NUI Model

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 1 HCI ndash Devices and Software Detect and process human behavior

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 2 NUI ndash Middleware and Application Framework Translate human behavior into action

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 4: Kinectic vision   looking deep into depth

Natural User InterfaceRevolutionary change in Human-Computer

interaction

Interpret natural human communication

Computers communicate more like people

The user interface becomes invisibleor looks and feels so real that it is no longer

iconic

Three Layer NUI Model

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 1 HCI ndash Devices and Software Detect and process human behavior

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 2 NUI ndash Middleware and Application Framework Translate human behavior into action

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 5: Kinectic vision   looking deep into depth

Three Layer NUI Model

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 1 HCI ndash Devices and Software Detect and process human behavior

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 2 NUI ndash Middleware and Application Framework Translate human behavior into action

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 6: Kinectic vision   looking deep into depth

Layer 1 HCI ndash Devices and Software Detect and process human behavior

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 2 NUI ndash Middleware and Application Framework Translate human behavior into action

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 7: Kinectic vision   looking deep into depth

Layer 2 NUI ndash Middleware and Application Framework Translate human behavior into action

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 8: Kinectic vision   looking deep into depth

Layer 3 Ambient Computing ndash Orchestrate billions of devices NUI becomes part of everyday life

Source httpsitesamdcomusDocumentsAMD_TFE2011_032SWpdf

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 9: Kinectic vision   looking deep into depth

Factors for NUI Revolution

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 10: Kinectic vision   looking deep into depth

Factors for NUI Revolution Sensor ndash Detect human behavior NUI Middleware Libraries ndash Interprets human

behavior Cloud ndash Extend NUI across multiple device

Sensors

Libraries

Application

Cloud

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 11: Kinectic vision   looking deep into depth

Point of Our Interest

Sensors Libraries Application

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 12: Kinectic vision   looking deep into depth

Different Sensors

Touch Mobile Phones Tablets and Ultrabooks Portable Audio Players Portable Game Consoles

Touch Less RGB camera Depth camera ndash Lidar CamBoard nano RGBD camera ndash Kinect Asus Xtion pro Carmine 108 Eye tracker ndash Tobii eye tracker Voice recognizer ndash Kinect Asus Xtion pro Carmine 108

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 13: Kinectic vision   looking deep into depth

Revolutionary ndash Kinect

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 14: Kinectic vision   looking deep into depth

Revolutionary ndash Kinect

Low Cost

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 15: Kinectic vision   looking deep into depth

KinectThe most popular NUI

Sensor

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 16: Kinectic vision   looking deep into depth

19

CONTROLLER FREE GAMING

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 17: Kinectic vision   looking deep into depth

20

AMAZING GAMES amp APPS VIDEOS

Games Apps Sports DanceMusic Fitness Family Action Adventure

Videos Xbox 360 Fitnect Humanoid Magic Mirror

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 18: Kinectic vision   looking deep into depth

21

WATCH APPS VIDEOS

Xbox 360 httpwwwyoutubecomwatchv=_xLTI-b-cZU

Fitnect ndash Virtual Fitting Room httpwwwopenniorgsolutionsfitnect-virtual-f

itting-room

httpwwwfitnecthu Controlling a Humanoid Robot with Kinect

httpwwwwimpcomrobotkinect Magic Mirror in Bathroom

httpwwwextremetechcomcomputing94751-the-new-york-times-magic-mirror-will-bring-shopping-to-the-bathroom

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 19: Kinectic vision   looking deep into depth

22

WHAT IS KINECT

Low-cost sensor device for providing real-time depth

color and audio data

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 20: Kinectic vision   looking deep into depth

23 How Kinect supports NUI

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 21: Kinectic vision   looking deep into depth

24

HARDWARE AND SOFTWARE INTERACTION

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 22: Kinectic vision   looking deep into depth

25

SDK ARCHITECTURE

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 23: Kinectic vision   looking deep into depth

26

SDK ARCHITECTURE

1 Kinect hardware - The hardware components including the Kinect sensor and the USB hub through which the Kinect sensor is connected to the computer

2 Kinect drivers - Windows drivers for the Kinect Microphone array as a kernel-mode audio device ndashstd audio APIs in

Windows Audio and video streaming controls (color depth and skeleton) Device enumeration functions for more than one Kinect

3 Audio and Video Components Kinect NUI for skeleton tracking audio and color and depth imaging

4 DirectX Media Object (DMO) microphone array beamforming audio source localization

5 Windows 7 standard APIs - The audio speech and media APIs and the Microsoft Speech SDK

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 24: Kinectic vision   looking deep into depth

27 Hardware

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 25: Kinectic vision   looking deep into depth

28

MAIN COMPONENTS

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 26: Kinectic vision   looking deep into depth

29

MAIN COMPONENTS

RGB camera Infrared (IR) emitter and an IR depth

sensor ndash estimate depth Multi-array microphone - four

microphones for capturing sound 3-axis Accelerometer - configured for a

2g range where g is the acceleration due to gravity Determines the current orientation of the Kinect

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 27: Kinectic vision   looking deep into depth

30

INTERACTION SPACE

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 28: Kinectic vision   looking deep into depth

31 NUI API

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 29: Kinectic vision   looking deep into depth

32

FOUR DATA STREAMS

NUI API lets the user programmatically control and access four data streams Color Stream Infrared Stream Depth Stream Audio Stream

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 30: Kinectic vision   looking deep into depth

33

STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadde

tailsaspxid=40276 App Examples

Color Basics - D2D Infrared Basics - D2D Depth Basics - D2D Depth - D3D Depth with Color - D3D Kinect Explorer - D2D Kinect Explorer - WPF

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 31: Kinectic vision   looking deep into depth

34

COLOR STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Color Basics - D2D

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 32: Kinectic vision   looking deep into depth

35

COLOR STREAM

Color Format

Resolution

RGB

640x480 Fps30

1280x960 Fps12

YUV 640x480 Fps15

Bayer

640x480 Fps30

1280x960 Fps12

New features of SDK 16 onwardsbull Low light (or brightly lit)bull Use hue brightness or contrast to improve

visual claritybull Use gamma to adjust the way the display

appears on certain hardware

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 33: Kinectic vision   looking deep into depth

36

INFRARED STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Infrared Basics - D2D

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 34: Kinectic vision   looking deep into depth

37

INFRARED STREAM

IR stream is the test pattern observed from both the RGB and IR camera

Resolution 640x480 Fps 30

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 35: Kinectic vision   looking deep into depth

38

DEPTH STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Depth Basics - D2D Depth - D3D Depth with Color - D3D

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 36: Kinectic vision   looking deep into depth

39

DEPTH STREAM

The depth data stream merges two separate types of data Depth data in millimeters Player segmentation data

Each player segmentation value is an integer indicating the index of a unique player detected in the scene

The Kinect runtime processes depth data to identify up to six human figures in a segmentation map

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 37: Kinectic vision   looking deep into depth

40

DEPTH STREAM

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 38: Kinectic vision   looking deep into depth

41

AUDIO STREAM APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Explorer - D2D Kinect Explorer - WPF

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 39: Kinectic vision   looking deep into depth

42

AUDIO STREAM

High-quality audio capture Audio input from + and ndash 50 degree in front of sensor The array can be pointed at 10 degree increment with in the

range Identification of the direction of audio sources Raw voice data access

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 40: Kinectic vision   looking deep into depth

43

AUDIO STREAM

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 41: Kinectic vision   looking deep into depth

44

RUNTIME IMPLEMENTS

In addition to the hardware capabilities the Kinect software runtime implements Skeleton Tracking Speech Recognition - Integration with

the Microsoft Speech APIs

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 42: Kinectic vision   looking deep into depth

45

SKELETON TRACKING

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 43: Kinectic vision   looking deep into depth

46

SKELETON TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Skeleton Basics - D2D Kinect Explorer - D2D Kinect Explorer - WPF

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 44: Kinectic vision   looking deep into depth

47

SKELETON TRACKING

Tracking Modes (SeatedDefault) Tracking Skeletons in Near Depth Range Joint Orientation Joint Filtering Skeleton Tracking With Multiple Kinect

Sensors

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 45: Kinectic vision   looking deep into depth

48

SPEECH RECOGNITION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Speech Recognition - Integration with the Microsoft Speech APIs Speech Basics - D2D Tic-Tac-Toe - WPF

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 46: Kinectic vision   looking deep into depth

49

SPEECH RECOGNITION

Microphone array is an excellent input device for speech recognition

Applications can use MicrosoftSpeech API for latest acoustical algorithms

Acoustic models have been created to allow speech recognition in several locales in addition to the default locale of en-US

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 47: Kinectic vision   looking deep into depth

50

ADDITIONAL LIBRARIES amp APIs

Face Tracking Kinect Fusion Kinect Interaction

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 48: Kinectic vision   looking deep into depth

51

FACE TRACKING APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Face Tracking 3D - WPF Face Tracking Basics - WPF Face Tracking Visualization

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 49: Kinectic vision   looking deep into depth

52

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

Input Images

The Face Tracking SDK accepts Kinect color and depth images as input The tracking quality may be affected by the image quality of these input frames

Face Tracking Outputs Tracking status 2D points 3D head pose Action Units (Aus)

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 50: Kinectic vision   looking deep into depth

53

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

2D points

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 51: Kinectic vision   looking deep into depth

54

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

3D head pose

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 52: Kinectic vision   looking deep into depth

55

FACE TRACKING

Source httpmsdnmicrosoftcomen-uslibraryjj130970aspx

AUsAU0 ndash Upper Lip Raiser

AU1 ndash Jaw Lowerer AU2 ndash Lip Stretcher

AU3 ndash Brow Lowerer

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 53: Kinectic vision   looking deep into depth

56

KINECT FUSION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Kinect Fusion Basics - D2D Kinect Fusion Color Basics - D2D Kinect Fusion Explorer - D2D

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 54: Kinectic vision   looking deep into depth

57

KINECT FUSION

Take depth images from the Kinect camera with lots of missing data

Within a few seconds producing a realistic smooth 3D reconstruction of a static scene by moving the Kinect sensor around

From this a point cloud or a 3D mesh can be produced

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 55: Kinectic vision   looking deep into depth

58

KINECT FUSION

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 56: Kinectic vision   looking deep into depth

59

KINECT INTERACTION APPS

Source Kinect for Windows Developer Toolkit v18 httpwwwmicrosoftcomen-indownloadd

etailsaspxid=40276 App Examples

Interaction Gallery - WPF

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 57: Kinectic vision   looking deep into depth

60

KINECT INTERACTION

Kinect Interaction provides Identification of up to 2 users and

identification and tracking of their primary interaction hand

Detection services for users hand location and state

Grip and grip release detection Press and scroll detection Information on the control targeted by

the user

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 58: Kinectic vision   looking deep into depth

61 Third Party Libraries

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 59: Kinectic vision   looking deep into depth

62

THIRD PARTY LIBRARIES

Matlab OpenCV PCL (Point Cloud Library) BoofCV Library ROS

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 60: Kinectic vision   looking deep into depth

63

MATLAB amp OpenCV

Matlab is a high-level language and interactive environment for numerical computation visualization and programming

Open Source Computer Vision (OpenCV) is a library of programming functions for real-time computer vision

MATLAB and OpenCV functions perform numerical computation and visualization on video and depth data from sensorSource

Maltlab ndash httpmsdnmicrosoftcomen-uslibrarydn188693aspxOpenCV ndash httpmsdnmicrosoftcomen-uslibrarydn188694aspx

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 61: Kinectic vision   looking deep into depth

64

PCL (POINT CLOUD LIBRARY)

Source PCL ndash httppointcloudsorgdocumentation

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 62: Kinectic vision   looking deep into depth

65

ROS (ROBOT OPERATING SYSTEM)

Provides libraries and tools to help software developers create robot applications

Provides hardware abstraction device drivers libraries visualizers message-passing package management and more

Provides additional RGB-D processing capabilities

Source ROS ndash httpwikirosorgopenni_camera

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 63: Kinectic vision   looking deep into depth

66

BoofCV

Depth image from Kinect sensor

3D point cloud created from RGB amp depth images

Binary Image processing Image registration and model fitting Interest point detection Camera calibration Provides RGB-D processing capabilities

Source BoofCV ndash httpboofcvorgindexphptitle=Tutorial_Kinect

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 64: Kinectic vision   looking deep into depth

67 Applications

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 65: Kinectic vision   looking deep into depth

68

KINECT APPLICATIONS

Gesture Recognition Gait Detection Activity Recognition

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 66: Kinectic vision   looking deep into depth

69

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Fingers 9 hand Gestures for number 1to 9

Sudoku game Ren et al2011

Hand Fingers

Pointing gestures pointing at objects or locations of interest

Real-time hand gesture interaction with the robot Pointing gestures translated into goals for the robot

Bergh et al 2011

Arms Lifting both arms to the front to the side and upwards

Physical rehabilitation Chang2011

Hand 10 hand Gestures for number 1 to 10

HCI system Experimental datasets in-clude hand signed digits gestures butframework can be generalized to recognize a wider range of gestures

Doliotis2011

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 67: Kinectic vision   looking deep into depth

70

GESTURE RECOGNITION

Body Parts

Gestures Applications References

Hand andHead

Clap Call Greet Yes No Wave Clasp Rest

HCI applications Not build for any specic application

Biswas2011

SingleHand

Grasp and Drop Various HCI applications

Tang 2012

Right hand(default)Left handHead Footor Knee

Push Hover View and select recipes for cooking in Kitchen when hands are messy

Panger 2012

HandArms

Right Left-arm swing Right Left-arm push Right Left-arm back Zoom-inout

Various HCI applications Not build for any specific application

Lai2012

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 68: Kinectic vision   looking deep into depth

71

Left and right swipeImage source Kinect for Windows Human Interface Guidelines v15 End presentationStart presentation

Push gestureCircling gesture

Hand as a marker

Image source Kinect for Windows Human Interface Guidelines v15

POWERPOINT

PRESENTATION CONTROL FROM HAND GESTURE

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 69: Kinectic vision   looking deep into depth

72

GESTURE PATH

Right swipe gesture paths

-03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

Series1

-04 -03 -02 -01 0 01 02 03 04 05033

034

035

036

037

038

039

04

041

Series1

-03 -02 -01 0 01 02 03 04 05 060

005

01

015

02

025

03

035

04

045

Series1

-04 -03 -02 -01 0 01 02 03 04 050385

039

0395

04

0405

041

0415

042

0425

043

0435

Series1

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 70: Kinectic vision   looking deep into depth

73

bull Consider an example Take a left swipe path

bull The sequence of angles will be of the form [180170182 hellip 170180185]

bull The corresponding quantized feature vector is [999 hellip 999]

bull How does it distinguish left swipe from right swipe Very straightforward

MODELING GESTURES

-04-03-02-01 0 01 02 03 04 0503303403503603703803904

041

Series1

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 71: Kinectic vision   looking deep into depth

74

MACHINE LEARNING

bull Returns likelihoods which are then converted to probabilities by normalization followed by thresholding (empirical) to classify gestures

HMM

model for

left swipe

HMM model for

right swipe

HMM model for push

Real time gesture

L1

L2L3

L4

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 72: Kinectic vision   looking deep into depth

75

bull Here are the results obtained by the implementation

bull Precision = 9723

bull Recall = 9366

bull F-measure = 9541

bull Accuracy = 955

RESULTS

Correct Gesture Incorrect gesture

Correctly classified

281 8

Wrongly classified 19 292

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 73: Kinectic vision   looking deep into depth

76

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

Source httpwwwserciiscernetin~venkyPapersKinect_gaitpdf

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 74: Kinectic vision   looking deep into depth

77

HUMAN GAIT RECOGNITION USING DEPTH CAMERA A COVARIANCE BASED APPROACH

(a) Fixed Camera (b) Freely moving camera

Recognition Rate ndash 97

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 75: Kinectic vision   looking deep into depth

78

TEAM ACTIVITY ANALYSIS AND RECOGNITION BASED ON KINECT DEPTH MAP AND OPTICAL IMAGERY TECHNIQUES

Source httpwwwtnstateeduitmrldocumentsTeam20Activity20Analysispdf

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 76: Kinectic vision   looking deep into depth

79 Windows SDK vis-agrave-vis OpenNI

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 77: Kinectic vision   looking deep into depth

80

KINECT SDK VIS-Agrave-VIS OpenNI

Library Capture

Process

Sensor Platform

OpenNI Yes Yes Primesense Sensors

Windows MacOS Linux

Kinect for Windows SDK

Yes Yes Kinect Windows andVM

Factors Kinect SDK

OpenNI

Depth Range 08m ndash 40m

05m ndash 9m

Skeleton Joints 20 joints 15 joints

Too near Too far index

Yes No

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 78: Kinectic vision   looking deep into depth

81

KINECT SDK VIS-Agrave-VIS OpenNI

Skeleton Tracking KinectInteraction Kinect Fusion Face Tracking

NITE 3D Hand KSCAN3D 3-D FACE

Additional libraries and APIs

OpenNI Middleware

Source NITE ndash httpwwwopenniorgfilesnite3D Hand ndash httpwwwopenniorgfiles3d-hand-tracking-library3D face ndash httpwwwopenniorgfiles3-d-face-modelingKSCAN3D ndash httpwwwopenniorgfileskscan3d-2

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 79: Kinectic vision   looking deep into depth

82

APPLICATION IN OpenNI

Evaluating a Dancerrsquos Performance using Kinect-based Skeleton Tracking Joint Positions Joint Velocity 3D Flow Error

Source httpdorasdcuie165741ACMGC_Doraspdf

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 80: Kinectic vision   looking deep into depth

83

Better skeleton representation 20 joints skeleton Joints are mobile

Higher frame rate ndash better for tracking actions involving rapid pose changes

Significantly better skeletal tracking algorithm (by Shotton 2013) Robust and fast tracking even in complex body poses

Simpler skeleton representation

15 joints skeleton Fixed basic frame of

[shoulder left shoulder right hip] triangle and [headshoulder] vector

Lower frame rate ndash slower tracking of actions

Weak skeletal tracking

Kinect SDK OpenNi

KINECT SDK VIS-Agrave-VIS OpenNI

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 81: Kinectic vision   looking deep into depth

84

HOW DOES KINECT WORKS

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 82: Kinectic vision   looking deep into depth

85 Depth Sensing

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 83: Kinectic vision   looking deep into depth

86

HOW PATTERN LOOKS LIKE

Source httpwwwfuturepictureorgp=97

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 84: Kinectic vision   looking deep into depth

87

DEPTH SENSING

The IR emitter projects an irregular pattern of IR dots of varying intensities

The IR camera reconstructs a depth image by recognizing the distortion in this pattern

Kinect works on stereo matching algorithm It captures stereo with only one IR camera

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 85: Kinectic vision   looking deep into depth

88

DEPTH SENSING

Source httpusersdickinsonedu~jmacselected-talkskinectpdf

Project Speckle pattern onto the scene Infer depth from the deformation of the

Speckle pattern

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 86: Kinectic vision   looking deep into depth

89 Skeleton Tracking

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 87: Kinectic vision   looking deep into depth

90

POSE ESTIMATION PIPELINE

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

capture depth image amp remove background infer

body parts per pixel

cluster pixels to hypothesize

body jointpositions

fit model amptrack skeleton

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 88: Kinectic vision   looking deep into depth

91

BODY PART INFERENCE

Highly varied training dataset - driving dancing kicking running navigating menus etc (500k images)

The pairs of depth and body part images - used for learning the classifier

Randomized decision trees and forests - used to classify each pixel to a body part based on some depth image feature and threshold

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 89: Kinectic vision   looking deep into depth

92

JOINT POSITION PROPOSALS Find joint point in each body parts - local

mode-finding approach based on mean shift with a weighted Gaussian kernel

This process considers both the inferred body part probability at the pixel and the world surface area of the pixel

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 90: Kinectic vision   looking deep into depth

93

RESULTS

Source httpresearchmicrosoftcompubs145347Kinect20Slides20CVPR2011pptx

Input Depth Inferred body parts

Front view Side view Top view

Inferred body joint positionNo tracking or smoothing

>

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 91: Kinectic vision   looking deep into depth

94

USING MULTIPLE KINECTS

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 92: Kinectic vision   looking deep into depth

Multimedia Sensor

Ease of Use Low Cost Strong Library

Support

25D depth data Limited field of view

43o vert 57o horz Limited Range

08 ndash 35 m Uni-Directional View Depth Shadows Limited resolution Missing depth values

PROS CONS

PROS amp CONS OF KINECT

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 93: Kinectic vision   looking deep into depth

96

LIMITED SPACE FOR AN ACTOR For a single Kinect minimum of 10 feet

by 10 feet space (3 meters by 3 meters) is needed

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Side View

Top View

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 94: Kinectic vision   looking deep into depth

97

DEPTH SHADOW

Source Multiple Kinects -- possible Moving while capturing -- possiblehttpwwwyoutubecomwatchv=ttMHme2EI9I

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 95: Kinectic vision   looking deep into depth

SOLUTION

Use Multiple Kinects

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 96: Kinectic vision   looking deep into depth

USE OF MULTIPLE KINECT 3600 Reconstruction

Source Huawei3DLife ACM Multimedia Grand Challenge for 2013httpmmveecsqmulacukmmgc2013

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 97: Kinectic vision   looking deep into depth

USE OF MULTIPLE KINECT Increases field of view Super Resolution

Source Maimone amp Fuchs 2012

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 98: Kinectic vision   looking deep into depth

DRAWBACKS OF MULTIPLE KINECTS

IR Interference Noise

Source Berger et al 2011a

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 99: Kinectic vision   looking deep into depth

MULTIPLE KINECTS INTERFERENCE

Individual capture Simultaneous capture Difference

Source Lihi Zelnik-Manor amp Roy OrndashEl 2012httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 100: Kinectic vision   looking deep into depth

ESTIMATION OF NOISE

Estimate interference noise in 2 configuration Parallel Perpendicular

PerpendicularParallel

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 101: Kinectic vision   looking deep into depth

INTERFERENCE NOISE

Single Kinect

Dual Kinects

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 102: Kinectic vision   looking deep into depth

INTERFERENCE NOISE

ParallelPerpendicularSource Mallick et al

2014

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 103: Kinectic vision   looking deep into depth

ESTIMATORS

Noise Measure Angle (0) Scene Single Kinect

Two Kinects

ZD Error 180 Room 692 1093

180 Human 401 825

90 Human 401 740

Avg (dmax - dmin) 180 Room 329 639

180 Human 206 624

90 Human 206 408

Average Standard Deviation

180 Room 8915 18571

180 Human 5826 16891

90 Human 5826 11865

Pixels with dmin = 0 amp dmax gt 0

180 Room 808 1752

180 Human 532 1984

90 Human 532 1187Source Mallick et al 2014

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 104: Kinectic vision   looking deep into depth

APPROACHES TO MINIMIZE INTERFERENCE

SDM Space Division Multiplexing Circular Placement Axial and Diagonal Placement Vertical Placement

TDM Time Division Multiplexing Mechanical Shutter (TDM-MS) Electronic Shutter (TDM-ES) Software Shutter (TDM-SS)

PDM Pattern Division Multiplexing Body-Attached Vibrators Stand-Mounted Vibrators

Source Mallick et al 2014

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 105: Kinectic vision   looking deep into depth

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 106: Kinectic vision   looking deep into depth

SDM ndash CIRCULAR PLACEMENT

Source Caon et at 2011

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 107: Kinectic vision   looking deep into depth

110

SDM ndash CIRCULAR PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 108: Kinectic vision   looking deep into depth

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source Ahmed 2012 httpwwwmpiinfmpgde~nahmedcasa2012pdf

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 109: Kinectic vision   looking deep into depth

112

SDM ndash AXIAL AND DIAGONAL PLACEMENT

Source iPiSoft Wiki httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

Top View Side View

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 110: Kinectic vision   looking deep into depth

113

SDM ndash VERTICAL PLACEMENT

Source Tong et al 2012

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 111: Kinectic vision   looking deep into depth

TDM - MECHANICAL SHUTTER (TDM-MS)

Moving Shaft Shutter

Source Kramer et al 2011

Shutter Closed

Shutter Open

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 112: Kinectic vision   looking deep into depth

TDM - MECHANICAL SHUTTER (TDM-MS)

A Revolving Disk Shutter

Source Schroder et al 2011

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 113: Kinectic vision   looking deep into depth

TDM - MECHANICAL SHUTTER (TDM-MS)

4-phase Mechanical Shuttering

Source Berger et al 2011b

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 114: Kinectic vision   looking deep into depth

TDM - ELECTRONIC SHUTTER (TDM-ES)

Source Faion et al 2012 Toy train tracking

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 115: Kinectic vision   looking deep into depth

TDM - SOFTWARE SHUTTER (TDM-SS)

Microsofts Kinect SDK v16 has introduced a new API (KinectSensorForceInfraredEmitterOff) to control the IR emitter as a Software Shutter This API works for Kinect for Windows only

Earlier the IR emitter was always active when the camera was active Using this API the IR emitter can be put o as needed

This is the most effective TDM scheme However no multi-Kinect application has yet been reported with TDM-SS

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 116: Kinectic vision   looking deep into depth

PDM ndash BODY-ATTACHED VIBRATORS

Source Butler et al 2012 ShakersquonrsquoSense

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 117: Kinectic vision   looking deep into depth

PDM ndash STAND-MOUNTED VIBRATORS

Source Kainz et al 2012 OmniKinect Setup

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 118: Kinectic vision   looking deep into depth

COMPARISON OF MULTIPLEXING TECHNIQUE

Quality Factor SDM TDM PDM

Accuracy Excellent Bad Very Good

Scalability Good (nooverlaps)

Bad Excellent

Frame rate 30 fps 30n fps 30 fps

Ease of Use Very easy Cumbersomeshutters

Inconvenientvibrators

Cost Low High Moderate

Limitations Few configurations

Unstable Blurred RGB

Robustness ChangeGeometry

Adjust Set-up Quite robust

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 119: Kinectic vision   looking deep into depth

122

BUYING THE RIGHT KINECTS

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 120: Kinectic vision   looking deep into depth

WHICH KINECT TO BUY Kinect for Xbox 360 ndash

The gaming console of Xbox Costs around $100 without the Xbox

httpwwwxboxcomen-INKinect Kinect Windows SDK is partially supported for this

Kinect for Windows ndash This is for Kinect App development Costs around

$250 httpwwwmicrosoftcomen-uskinectforwindows Kinect Windows SDK is fully supported for this

Good for Gaming

Recommended for Research

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 121: Kinectic vision   looking deep into depth

124

REFERENCES

1 Ren Z Meng J and Yuan J Depth camera based hand gesture recognition and its applications in human-computer-interaction In Information Communications and Signal Processing (ICICS) 2011 8th International Conference on (2011) pp 1- 5

2 Biswas K K and Basu S K Gesture recognition using Microsoft Kinect In Proceedings of the 5th International Conference on Automation Robotics and Applications (2011) pp 100 - 103

3 Chang Y-J Chen S-F and Huang J-D A Kinect-based system for physical rehabilitation A pilot study for young adults with motor disabilities Research in Developmental Disabilities (2011) 25662570

4 Doliotis P Stefan A McMurrough C Eckhard D and Athitsos V Comparing gesture recognition accuracy using color and depth information In Proceedings of the 4th International Conference on PErvasive Technologies Related to Assistive Environments PETRA 11 (2011)

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 122: Kinectic vision   looking deep into depth

125

REFERENCES

5 Lai K Konrad J and Ishwar P A gesture-driven computer interface using kinect In Image Analysis and Interpretation (SSIAI) 2012 IEEE Southwest Symposium on (2012) pp 185 - 188

6 Panger G Kinect in the kitchen testing depth camera interactions in practical home environments In CHI 12 Extended Abstracts on Human Factors in Computing Systems (2012) pp 1985 - 1990

7 Tang M Recognizing hand gestures with Microsoftrsquos Kinect Department of Electrical Engineering Stanford University

8 Ahmed N A system for 360 acquisition and 3D animation reconstruction using multiple RGB-D cameras Unpublished article 2012

URL httpwwwmpiinfmpgde~nahmedcasa2012pdf

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 123: Kinectic vision   looking deep into depth

126

REFERENCES

9 Caon M Yue Y Tscherrig J Mugellini E and Khaled O A Contextaware 3D gesture interaction based on multiple Kinects In Ambient Computing Applications Services and Technologies Proc AMBIENT First Intl Conf on pages 7-12 2011

10 Berger K Ruhl K Albers M Schroder Y Scholz A Kokemuller J Guthe S and Magnor M The capturing of turbulent gas flows using multiple Kinects In Computer Vision Workshops IEEE Intl Conf on pages 1108-1113 2011a

11 Berger K Ruhl K Brmmer C Schroder Y Scholz A and Magnor M Markerless motion capture using multiple color-depth sensors In Vision Modeling and Visualization Proc 16th Intl Workshop on pages 317-324 2011b

12 Faion F Friedberger S Zea A and Hanebeck U D Intelligent sensor scheduling for multi-Kinect-tracking In Intelligent Robots and Systems (IROS) IEEERSJ Intl Conf on pages 3993-3999 2012

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 124: Kinectic vision   looking deep into depth

127

REFERENCES

13 Butler A Izadi S Hilliges O Molyneaux D Hodges S and Kim D ShakenSense Reducing interference for overlapping structured light depth cameras In Human Factors in Computing Systems Proc ACM CHI Conf on pages 1933-1936 2012

14 Kainz B Hauswiesner S Reitmayr G Steinberger M Grasset R Gruber L Veas E Kalkofen D Seichter H and Schmalstieg D (2012) OmniKinect Real-time dense volumetric data acquisition and applications In Virtual reality software and technology Proc VRST12 18th ACM symposium on pages 25-32 2012

15 Maimone A and Fuchs H Reducing interference between multiple structured light depth sensors using motion In Virtual Reality Proc IEEE Conf on pages 51-54 2012

16 Kramer J Burrus N Echtler F C D H and Parker M Hacking the Kinect Apress 2012

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 125: Kinectic vision   looking deep into depth

128

REFERENCES

17 Zelnik-Manor L amp OrndashEl R Kinect Depth Map Seminar in ldquoAdvanced Topics in Computer Visionrdquo (048921 ndashWinter 2013) URL httpwebeetechnionacil~lihiTeaching2012_winter_048921PPTRoypdf

18 iPiSoft Wiki User Guide for Dual Depth Sensor Configurations Last accessed 17-Dec-2013

URL httpwikiipisoftcomUser_Guide_for_Dual_Depth_Sensor_Configuration

19 Tong J Zhou J Liu L Pan Z and Yan H (2012) Scanning 3D full human bodies using Kinects Visualization and Computer Graphics IEEE Transactions on 18643-650 2012

20 Mallick T Das PP Majumdar A Study of Interference Noise in Multi-Kinect Set-up Accepted for presentation at VISAPP 2014 9th Intrsquol Jt Conf on Computer Vision Imaging and Computer Graphics Theory and Applications Lisbon Portugal 5-8 Jan 2014

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 126: Kinectic vision   looking deep into depth

129

REFERENCES

21 Huawei3DLife ACM Multimedia Grand Challenge for 2013 httpmmveecsqmulacukmmgc2013

22 Schroder Y Scholz A Berger K Ruhl K Guthe S and Magnor M Multiple Kinect studies Technical Report 09-15 ICG 2011

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 127: Kinectic vision   looking deep into depth

130

CREDITS

Tanwi Mallick TCS Research Scholar Department of Computer Science and Engineering IIT Kharagpur has prepared this presentation

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you
Page 128: Kinectic vision   looking deep into depth

131 THANK YOU

  • Kinectic vision
  • Slide 2
  • Slide 3
  • Slide 4
  • Slide 5
  • Slide 6
  • Three Layer NUI Model
  • Layer 1 HCI ndash Devices and Software Detect and process human
  • Layer 2 NUI ndash Middleware and Application Framework Translate
  • Layer 3 Ambient Computing ndash Orchestrate billions of devices
  • Slide 11
  • Factors for NUI Revolution
  • Point of Our Interest
  • Different Sensors
  • Revolutionary ndash Kinect
  • Revolutionary ndash Kinect
  • Slide 17
  • controller FREE gaming
  • Amazing Games amp APPS VIDEOs
  • Watch APPS VIDEOs
  • What is Kinect
  • How Kinect supports NUI
  • Hardware and Software Interaction
  • SDK Architecture
  • SDK Architecture (2)
  • Hardware
  • Main components
  • Main components (2)
  • Interaction Space
  • NUI API
  • Four data streams
  • Stream APPs
  • COLOR Stream APPs
  • Color stream
  • INFRARED Stream APPs
  • Infrared stream
  • DEPTH Stream APPs
  • Depth stream
  • Depth stream (2)
  • AUDIO Stream APPs
  • Audio stream
  • Audio stream (2)
  • runtime implements
  • Skeleton tracking
  • Skeleton tracking APPS
  • Skeleton tracking (2)
  • Speech Recognition APPS
  • Speech Recognition
  • Additional libraries amp APIs
  • Face Tracking Apps
  • Face tracking
  • Face tracking (2)
  • Face tracking (3)
  • Face tracking (4)
  • Kinect Fusion Apps
  • Kinect Fusion
  • Kinect Fusion (2)
  • Kinect Interaction Apps
  • Kinect Interaction
  • Third Party Libraries
  • Third Party Libraries (2)
  • Matlab amp OpenCV
  • PCL (Point Cloud Library)
  • Ros (Robot Operating System)
  • BoofCV
  • Applications
  • Kinect Applications
  • Gesture Recognition
  • Gesture Recognition (2)
  • Slide 71
  • Slide 72
  • Slide 73
  • Slide 74
  • Slide 75
  • Human Gait Recognition Using Depth Camera A Covariance Based A
  • Human Gait Recognition Using Depth Camera A Covariance Based A (2)
  • Team Activity Analysis and Recognition Based on Kinect Depth Ma
  • Windows SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI
  • Kinect SDK vis-agrave-vis OpenNI (2)
  • Application in openni
  • Kinect SDK vis-agrave-vis OpenNI (3)
  • How does kinect works
  • Depth Sensing
  • How pattern looks like
  • Depth sensing
  • Depth sensing (2)
  • Skeleton Tracking
  • pose estimation pipeline
  • Body part Inference
  • Joint position proposals
  • Results
  • Using multiple kinects
  • Pros amp Cons of Kinect
  • Limited Space for an actor
  • Depth Shadow
  • Solution
  • Use of multiple kinect
  • Use of multiple Kinect
  • Drawbacks of Multiple Kinects
  • Multiple Kinects interference
  • Estimation of Noise
  • Interference Noise
  • Interference Noise (2)
  • Estimators
  • Approaches to minimize interference
  • SDM ndash Circular Placement
  • SDM ndash Circular Placement (2)
  • SDM ndash Circular Placement (3)
  • SDM ndash Axial and Diagonal Placement
  • SDM ndash Axial and Diagonal Placement (2)
  • SDM ndash Vertical Placement
  • TDM - Mechanical Shutter (TDM-MS)
  • TDM - Mechanical Shutter (TDM-MS) (2)
  • TDM - Mechanical Shutter (TDM-MS) (3)
  • TDM - Electronic Shutter (TDM-ES)
  • TDM - Software Shutter (TDM-SS)
  • PDM ndash Body-Attached Vibrators
  • PDM ndash Stand-Mounted Vibrators
  • Comparison of Multiplexing Technique
  • Buying the right kinects
  • Which Kinect to buy
  • References
  • References (2)
  • References (3)
  • References (4)
  • References (5)
  • References (6)
  • Credits
  • Thank you