gesture recognition - tams.informatik.uni-hamburg.de · opencv •library for real time computer...

23
Gesture Recognition Tobias Scheidt [email protected] 23.04.2014 1

Upload: others

Post on 19-Jul-2020

6 views

Category:

Documents


0 download

TRANSCRIPT

Page 2: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Contents

• Introduction

• Motivation

• Devices

• Detection of human bodies and parts of them

• How the Kinect works

• Algorithms for recognize dynamic gestures

• Frameworks

24.04.2014 2

Page 3: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Gesture Recognition

24.04.2014 3

• Interpreting human Gestures with mathematical algorithms

• Communication with the computer

Input Interface Input Interface Output

Page 4: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Kinds of gestures

• Static gestures

• Dynamic gestures

23.04.2014 4

Page 5: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Motivation

• Breaking Human-Computer barrier

• Prevent possible bottlenecks

• Medical issues

– Detecting of existing health disorder

– Prevention

24.04.2014 5

Page 6: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Devices

• Wired gloves

– Computer collects information about the position and rotation of the hand and fingers

• Stereo cameras

23.04.2014 6

Page 7: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Devices • Depth-aware cameras

– structured light cameras

– time-of-flight cameras

23.04.2014 7

Page 8: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Devices

• Controller-based gestures

– Controllers act as an extension of the body

• Single camera

– Color based recognition

– Not anymore state-of-the-art

23.04.2014 8

Page 10: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Detection of human bodies and parts of them

• 3D model-based algorithms

• Skeletal-based algorithms

• Appearance-based models

24.04.2014 10

Page 11: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Appearance-based models

• Does not use spatial representation of the body

• Using a template database

• Mostly used for hand-tracking

23.04.2014 11

Page 12: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

How the Kinect depth sensor works

23.04.2014 12

• Light coding algorithm

– Patented from PrimeSense

– Not documented

• Assumptions due to the patent

• Studies of the Kinect

– Uses the infrared emitter and sensor

• Cheaper than Time-of-Flight depth cameras

Page 13: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

How the Kinect depth sensor works

23.04.2014 13

• IR-emitter projecting an alternating dot pattern in the room

• Probably it is a code that simplifies the calculation

Page 14: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

How the Kinect depth sensor works

23.04.2014 14

• Triangulation method

– Determine the location of a point by measuring the angle to it.

𝑙 = 𝑙1 + 𝑙2 =𝑑

𝑡𝑎𝑛𝛼+

𝑑

𝑡𝑎𝑛𝛽 𝑑

𝑙2 𝑙1

𝛼 𝛽

𝐶

𝐵 𝐴

Page 15: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

How the Kinect depth sensor works

23.04.2014 15

• Kinect has just one IR sensor • For the triangulation method you

need two IR images • There is a trick:

– One image is captured by the IR sensor

– The other picture is invisible and just virtual

• Calculate the horizontal offset of the speckles on the first image relative to hardcoded position

Page 16: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Using multiple Kinect-systems

23.04.2014 16

• Great problem of optical systems is the occlusion

• Visible area is just 4 m2

• Theoretical possible to use multiple Kinect-systems without interference

• Object of current research

Page 17: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Algorithms for recognize dynamic gestures

23.04.2014 17

• Hidden Markov Models

– Handling with states and their transition probability

• Dynamic Time Warping

– Algorithm for measuring similarity between two temporal sequences which may vary in time or speed

– Also used for speech recognition

Page 18: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Dynamic time warping

24.04.2014 18

• Any data which can be turned into a linear sequence can be analyzed with DTW

Page 19: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

OpenCV

• Library for real time Computer Vision

• Many purposes Gesture Recognition

• Released under BSD license

• Supports C++, C, Python, Matlab and Java

• For Windows, Linux, Mac OS, iOS and Android

23.04.2014 19

Page 20: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

MATLAB

• OpenCV alternative

• High-level scripting language

• Really easy to use

• Standard MATLAB version costs ≈ 1500 €

• OpenCV is free (BSD license)

• Easier to debug

23.04.2014 20

Page 21: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Accessing the Kinect from PC

• OpenNI Framework

• Open source SDK

• Used for the development of 3D sensing

• With the OpenNI SDK you can use the Kinect on the PC

– Programming your own applications

– Use a lot of algorithms for body-tracking

23.04.2014 21

Page 22: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

OpenNI SDK

• Library for

23.04.2014 22

Page 23: Gesture Recognition - tams.informatik.uni-hamburg.de · OpenCV •Library for real time Computer Vision •Many purposes Gesture Recognition •Released under BSD license •Supports

Thank you

23.04.2014 23